如何在Python中打印列表而不带括号和逗号

3
ISBN = [int(e) for e in input("input ISBN :")]
sum = 10*ISBN[0]+9*ISBN[1]+8*ISBN[2]+7*ISBN[3]+6*ISBN[4]+5*ISBN[5]+4*ISBN[6]+3*ISBN[7]+2*ISBN[8]
for i in range(0,10):
    sum_check = sum + i
    if sum_check % 11 ==0: 
      print("n10 =",i)
       ISBN.append(i)

输出

n10 = 5
[0, 2, 0, 1, 3, 1, 4, 5, 2, 5]

但我希望得到这个输出结果

020134525


5
ISBN中的内容连接起来。 - erip
print(*ISBN, sep='')。关于这个问题有很多答案,例如:https://dev59.com/nW035IYBdhLWcg3wZvFg - terence hill
这个回答解决了你的问题吗?如何“正确地”打印列表? - AMC
4个回答

4

要在Python中打印任何列表,不带空格、逗号和括号,只需执行以下操作

print(*list_name,sep='')

有没有办法将这个应用到 str() 上? - johan

0
如果你想原样打印列表,Python 将始终在方括号内打印它:
[0, 2, 0, 1, 3, 1, 4, 5, 2, 5]

如果你想把所有数字放在一起,那就意味着你想要在列表中进行“连接”操作。
你需要做的是将列表中的项目进行“连接”,像这样:
result = ''.join(list)

result对象将会是您所需的数字,如下:

020134525

1
列表没有join方法。 - alani
你说得对,我和其他编程语言搞混了。已经修复了。 - Josef Ginerman

0
如果ISBN = [0, 2, 0, 1, 3, 1, 4, 5, 2, 5]
那么你可以写成:
ISBN = [0, 2, 0, 1, 3, 1, 4, 5, 2, 5]
print(''.join(str(i) for i in ISBN))

-1
尝试使用''.join(ISBN)。或者,将ISBN作为字符串而不是列表。
ISBN = ''
(your code)
ISBN+=i

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接