簡體   English   中英

為什么“ seq”不能循環工作?

[英]Why 'seq' not work in a loop?

for i in range(10):
    print(i, sep = ',', end = '')

應該是0,1,2,3,4,5,6,7,8,9 ,但事實是 在此處輸入圖片說明 sep不起作用。 謝謝!

可選的sep參數用於定義以逗號分隔的參數值之間的分隔符,這些參數值饋給printobjects參數。 objects是可變參數參數,這意味着它可以接受任意數量的參數(或解壓縮的可迭代對象)。

文檔

print(* objects,sep ='',end ='\\ n',file = sys.stdout,flush = False)

將對象打印到文本流文件中,以sep分隔,然后以end分隔。 sep,end和file(如果存在)必須作為關鍵字參數給出。

所有非關鍵字參數都將像str()一樣轉換為字符串,並寫入流中,以sep分隔,然后以end分隔。 sep和end都必須是字符串; 它們也可以是None,這意味着要使用默認值。 如果沒有給出對象,print()只會寫完。

編寫代碼的更好方法是:

print(*range(10), sep=',', end='')

這使用*運算符解壓縮可迭代對象,並將其每個元素作為print函數的參數輸入。

它等效於:

print(0, 1, 2, 3, 4, 5, 6, 7, 8, 9, sep=',', end='')

在此循環中, i始終是一位整數,並且不能將其分開。

就像這樣:

print("1", sep=',', end='')
print("2", sep=',', end='')
print("3", sep=',', end='')
...

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM