我正在尝试更好地格式化,以便将其打印为一个文本块(空格正常)
现在正在打印这样的[4444,4444]我希望它打印4444 4444
#secret code encrypter
def encoder(plain):
'''encodes a given input with a secret formula
'''
result = []
for i in plain:
i=ord(i)*77+4
result.append(i)
return result
def main():
plain=input('Enter a sentence: ')
final=encoder(plain)
print(final)
main()
答案 0 :(得分:7)
制作字符串并加入它们:
print(' '.join(map(str, your_list)))
更好(如果你使用的是Python 3.x)以避免显式转换:
print(*your_list)
答案 1 :(得分:4)
如果我得到你想做的事,试试这个:
print(" ".join(map(str, final)))
答案 2 :(得分:2)
根据您对之前答案的评论,您需要:
print(' '.join(str(x) for x in final))
这会将final
中的每个元素转换为字符串,然后再加上它们之间的空格。
答案 3 :(得分:1)
试试这个:
print(" ".join(list_you_want_to_print))
str.join(iterable)
将返回一个字符串,其中utterable中的项目由字符串分隔。
答案 4 :(得分:0)
借鉴其他人从我的评论中指出的内容,增加了许多人已经错过的内容,这在之前的答案之一中是这样的:
(对于pre python 3.0 :)您将需要使用raw_input
而不是input
,因为您只想捕获而不是评估。
按2.7.5文档:
input(prompt)
相当于eval(raw_input(prompt))
印刷(大部分是从Jon C的回答中解脱出来的)让它们变成字符串 加入他们:
print(' '.join(map(str, your_list)))
更好(如果您使用的是Python 3.x)以避免显式对话:
print(*your_list)