[英]How to print on the same line, using one-line if else in python
在我們使用的同一行上打印
for i in range(10):
print i, # python 2
print (i,end='') # python 3
但if - else
在另一行內怎么做if - else
for i in range(10):
print((i,end=' ') if (i%2==0) else (i))
它給出以下錯誤:
print((i,end=' ') if (i%2==0) else (i)))
^
SyntaxError: invalid syntax
這是另一種選擇:
for i in range(10):
print(i, end=('\n' if i % 2 else ' '))
如果您反轉邏輯,則無需==
。
對於真正的單行代碼,請考慮以下可讀性較低的代碼:
print(*('{}{}'.format(i, '\n' if i%2 else ' ') for i in range(10)), sep='', end='')
為什么“一行”甚至更有趣? 我們在打Code Golf嗎?
for i in range(10):
print(i, '' if i % 2 == 0 else '\n', end='')
我在python3。這有效:
for i in range(10):
print(i, end=' ') if(i%2==0) else (i)
可能的單線
''.join([' ' if i % 2 else str(i) for i in range(10)])
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.