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

时间:2018-02-12 22:31:00

标签: python

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,并且想知道我如何能够运行这个程序(将十六进制转换成字符)并插入一个数字(例如{ {1}})它将被插入一个列表(已翻译),就像61一样,但在我结束程序之前它将被隐藏。

能够在程序结束后或者在程序期间查看列表。如果可能的话,列表可以是一行(例如,如果我键入.append而不是48(H) 49(I) 20(space) 57(W) 41(A) 4C(L) 4C(L),它将显示为[H, I, (space), W , A , L, L])?

感谢您的时间。

2 个答案:

答案 0 :(得分:1)

您可以做的是将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()在引号之间的前面加一个参数 - 这是你的分隔符 - 括号后面的参数 - 这是要加入的列表。见这里:Concatenate item in list to strings

答案 1 :(得分:0)

他最好的办法是

print(''.join(lst))

基于@roganjosh的评论

另一种方法(但不推荐):

对于python 3

for item in lst:
    print(item,)
print('\n')

对于python 2

for item in lst:
    print item,
print '\n'

这会在字符之间添加空格。