我是Python的新手。我怎么知道一个函数是否被使用;如果不等于零,则程序将打印;否则,请勿打印任何零。
b1 = (int(a1[0]) + int(a2[0])) // 10
b2 = (int(a1[1]) + int(a2[1])) // 10
b3 = (int(a1[2]) + int(a2[2])) // 10
if (b1,b2,b3) !=0:
print (b1, b2, b3)
答案 0 :(得分:1)
欢迎堆栈溢出!
在Python中,(b1,b2,b3)
代表tuple
对象。而且它显然不等于int对象零,因此您的if条件始终会满足。
如果要在三个都不为零的情况下进行打印,则可以将代码更改为此:
if b1 != 0 or b2 != 0 or b3 != 0:
print(b1,b2,b3)
答案 1 :(得分:1)
您可以使用元组而不是int列表:
这是您可以使用的方式:
thistuple = (0,2,3,1)
for i in range(len(thistuple)):
if(thistuple[i] != 0):
print (thistuple[i])
答案 2 :(得分:0)
因为它是数组,而不是检查像这样的值,您甚至可以使用loop
for i in range(3):
if int(a1[i]) + int(a2[i]) != 0:
print(int(a1[i]) + int(a2[i]))
这将仅打印不等于零的答案。
答案 3 :(得分:0)
尝试一下:
您可以将所有元素b1,b2,b3存储在列表中并检查特定值:
a1=[0,2,3]
a2=[0,0,4]
b1 = int(a1[0]) + int(a2[0])
b2 = int(a1[1]) + int(a2[1])
b3 = int(a1[2]) + int(a2[2])
temp=[b1,b2,b3]
if 0 in temp:
print(b1, b2, b3)