[英]How do I make this only print the last value?
我有下面的代码来加密消息:
massage= raw_input("Enter message to be encrypted: ")
spec = chr(0b1010101)
key = ord(spec)
encrypt = ""
for i in range(0, len(massage)):
encrypt = encrypt + chr(ord(massage[i]) ^ key)
print encrypt
说我给它“哟哟”
它会给我:
,
,:
,:U
,:U,
,:U,:
我只需要最后一个答案,即:: u ,:
我需要做什么?
将print语句置于循环之外 。
由于print语句位于内部,因此每个迭代运行一次。 如果它在外面,那么它只会做一次-完成后。
for i in range(0, len(massage)):
encrypt = encrypt + chr(ord(massage[i]) ^ key)
print encrypt
取消打印调用的缩进。 这将使它脱离for循环,并且仅在循环完成时才打印其值。
略有不同的是,如果您希望人们花费时间和精力来回答您的问题,那么您可能希望按接受率进行工作。 到目前为止,您已经提出了8个问题,但尚未接受任何问题的答案。 (单击答案旁边的箭头以接受它)
message= raw_input("Enter message to be encrypted: ")
spec = chr(0b1010101)
key = ord(spec)
encrypt = ""
for i in range(0, len(message)):
encrypt = encrypt + chr(ord(message[i]) ^ key)
print encrypt
将打印语句移到for循环之外。 为此,您需要取消缩进打印语句。
使用生成器:
message= raw_input("Enter message to be encrypted: ")
key=0b1010101
print ''.join(chr(key^ord(c)) for c in message)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.