![](/img/trans.png)
[英]Python: Iterating over a list, but I want to add to that list while in the loop and continue iterating over what was added.
[英]Python 3: I want to be able to add to a list in a loop,
hexadecimal = 0
while hexadecimal_ != '000':
if hexadecimal_ == '000':
print("End of Program")
else:
hexadecimal_ = input("Enter Hexadecimal: (0-7F) (Enter '000' to erminate program)")
if hexadecimal_ == '0':
print("(NULL)")
elif hexadecimal_ == '1':
print("(Start of Header)")
elif hexadecimal_ == '2':
print("(Start of Text)")
我只是在高中,大约2周前才开始学习python,想知道如何运行该程序(将十六进制转换为字符)并插入数字(例如61
),然后将其插入一个类似于.append
的列表(已翻译),但是在我结束程序之前它将被隐藏。
程序结束后或在程序执行过程中能够查看列表。 如果可能的话,列表可以是一行(例如,如果我键入48(H) 49(I) 20(space) 57(W) 41(A) 4C(L) 4C(L)
而不是[H, I, (space), W , A , L, L]
它会以HI(space)WALL
吗?
感谢您的时间。
您可以做的是将hexadecimal_条目追加到列表中,然后在while循环中断后,使用.join方法打印出该列表中的元素。 像这样:
list = []
while hexadecimal_ != '000':
hexadecimal_ = input("Enter Hexadecimal: (0-7F) (Enter '000' to erminate program)")
if hexadecimal_ == '000':
break()
elif hexadecimal_ == '0':
print("(NULL)")
elif hexadecimal_ == '1':
print("(Start of Header)")
elif hexadecimal_ == '2':
print("(Start of Text)")
list.append(hexadecimal_)
print(''.join(list))
''.join()在引号之间的前面有一个参数-这是分隔符-在方括号之间的后面有一个参数-这是要加入的列表。 参见此处:将列表中的项目连接到字符串
他最好的解决方法是
print(''.join(lst))
基于@roganjosh的评论
另一种方法(但不建议这样做):
对于python 3
for item in lst:
print(item,)
print('\n')
对于python 2
for item in lst:
print item,
print '\n'
这确实在字符之间添加了空格。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.