繁体   English   中英

Python 3:我希望能够循环添加到列表中,

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM