print語句print [expression ("," expression)* [","]]print expression [("," expression)+ [","]][]表示可選項,*表示零次或多次重復(fù),+表示至少一次重復(fù)。print是一種特殊的語句,它用于在stdout輸出字符串。print有多種使用形式:print xprint x,yprint x,y,print object, x, y第1行是print的最普通的形式。第2行用print一次輸出多個變量值,print會在變量之間自動加上一個"空格"。第3行與第2行的不同是在y的后面多了一個",",這個逗號用來阻止print在打印出x和y的值后,自動附加上一個“\n”字符。第4行,是一種輸出重定向的形式,也就是說把x和y的值輸出到object的write方法中,這同時也表明object必須有一個write方法。在python中,print語句其實只是一種簡寫形式,是下面這段程序的簡寫:import syssys.stdout.write(str(x) + '\n')上面這兩行合起來就是“print x”這一句。可以看出,print是調(diào)用str()函數(shù)來產(chǎn)生字符串的,并且會在輸出的字符串后加上一個'\n'字符。由于print實際是上調(diào)用了stdout的write方法。程序員也可以把stdout賦為別的值,從面實現(xiàn)print的輸出重定向的功能。比如:import sysx="I'm here!"fp=file('log.txt','a')sys.stdout=fpprint x第4行改變了stdou的值,而且fp也是一個文件對象,有一個write方法。這一小段代碼的功能是把print的輸出全部以appand的模式寫到了文件log.txt中。在第4行之后的print語句,都是這種功能?,F(xiàn)在假設(shè)要恢復(fù)print輸出到標(biāo)準(zhǔn)輸出的功能,那么就需要讓stdout重新指向標(biāo)準(zhǔn)輸出,可以使用如下的方式:sys.stdout=sys.__stdout__在sys.__stdout__中保存有指向標(biāo)準(zhǔn)輸出的信息,通過這行代碼,print可以恢復(fù)為原來的功能。有時候要在這兩種模式之間換來換去,一會要輸出到文件中,一會要輸出到標(biāo)準(zhǔn)輸出中,通過改變sys.stdout的值可以實現(xiàn),不過太麻煩,python提供了另外一種簡便的print語句形式,來解決這種需求:print object,x,y能過這個符號,可以實現(xiàn)輸出重定向到object,當(dāng)然object必須有一個write方法。否則會出現(xiàn)AttributeError。注意,在這種print形式中,sys.stdout并沒有改變,也就是說在這之后的print語句,具有的還是標(biāo)準(zhǔn)功能。雖然print語句實際上sys.stdou.write(),但sys模塊的import工作并不需要程序員操心,python會自動處理。類似于print的輸出,當(dāng)用內(nèi)置函數(shù)raw_input([prompt])進行讀取操作時,實際上用的是sys.stdin.read()方法。也可以通過改變stdin的值來控制入操作。相應(yīng)的也有一個sys.__stdin__用來保存標(biāo)準(zhǔn)輸入的信息。
成都創(chuàng)新互聯(lián)公司是一家專業(yè)提供馬邊彝族企業(yè)網(wǎng)站建設(shè),專注與網(wǎng)站制作、成都網(wǎng)站設(shè)計、HTML5、小程序制作等業(yè)務(wù)。10年已為馬邊彝族眾多企業(yè)、政府機構(gòu)等服務(wù)。創(chuàng)新互聯(lián)專業(yè)網(wǎng)絡(luò)公司優(yōu)惠進行中。
你的函數(shù)是讓原列表每個元素值+1,這里省略了函數(shù),做的仍然是每個元素+1
# 2021-05-11 Luke
s=[1, 2, 3, 4, 5, 5, 6, 1, 4, 5, 5, 7, 1, 5, 3, 8, 3, 5, 9, 1]
num = input("請指定需要循環(huán)的次數(shù):")
i = 1
while i = int(num):
new_s = []
for a in s:
a += 1
new_s.append(a)
s = []
s = new_s
用你寫的函數(shù)的話這樣也可以
# 2021-05-11 Luke
s=[1, 2, 3, 4, 5, 5, 6, 1, 4, 5, 5, 7, 1, 5, 3, 8, 3, 5, 9, 1]
def tset(s):
s1 = [x+1 for x in s]
return s1
num = input("請指定需要循環(huán)的次數(shù):")
i = 1
while i = int(num):
new_s = tset(s)
s = new_s
i += 1
print(s)
i += 1
print(s)
本節(jié)中的萬花筒通過彩色隨機螺旋線來實現(xiàn)。我們首先定義一個函數(shù)draw(),這個函數(shù)用來繪制一個螺旋線,函數(shù)中的畫筆起始位置的坐標(biāo)為函數(shù)的兩個形參。然后調(diào)用函數(shù)的時候使用一個for循環(huán)來實現(xiàn)多次調(diào)用函數(shù),同時,函數(shù)的兩個實參由random模塊生成的隨機數(shù)組成。
下面是一個例子,用 for 循環(huán)調(diào)用 10 次 test 函數(shù),并把返回值加到 sum 變量中:
#coding=utf-8
def?test(n):
return?n?+?1
sum?=?0
#?使用?for?循環(huán)調(diào)用?10?次?test?函數(shù)
for?i?in?range(10):
#?調(diào)用?test?函數(shù),并將返回值加到?sum?中
sum?=?sum?+?test(i)
print('sum?=?'?+?str(sum))