在Python中,如何将整数一个打印在另一个下面:
a1 = "Great"
a2 = 100
for all in a1:
print(all)
输出:
G
r
e
a
t
问题:如何为变量a2
编写for
/print
语句,以便输出为:
1
0
0
您需要将a2
,一个int转换为可迭代的东西。一种方法是将a2
转换为字符串:
a2 = 100
for str_digit in str(a2): # if a2 is negative use str(a2)[1:] to not print '-' sign
print(str_digit)
另一种方法可以是将a2
中的单个数字(仍然是int(提取到列表(或另一个可迭代的列表(中:
def get_digits(num):
num = abs(num)
digits = []
while num != 0:
digits.append(num % 10)
num //= 10
return digits
a2 = 100
for str_digit in get_digits(a2):
print(str_digit)
输出:
1
0
0
类型为int
的对象是不可迭代的。因此,通过使它成为string
来强制它是可迭代的。
x = 1337
for num in str(x):
print(num)
要通过for循环获取单词的字母或数字的元素,需要一个字符串
a=100是一个整数,因此您需要将其转换为字符串,如下所示:
a=str(100)
for i in a:
print(i)