我的最终目标是获得:
并执行其他计算,例如(1 * 8),(12 * 8),(123 * 8)。
到目前为止,我拥有的代码是
for i in range(1,10):
for j in range(1,i+1):
print(j)
print()
>>>
1
1
2
1
2
3
1
2
3
4
如何使它们成为一个长整数?教科书提供的提示是“考虑使用字符串构建数字然后进行转换。”
答案 0 :(得分:2)
一种更有效的方法是使用数学:
n = 0
for i in range(1, 10):
n = n * 10 + i
print(n)
这将输出:
1
12
123
1234
12345
123456
1234567
12345678
123456789
答案 1 :(得分:1)
欢迎来到。
我以您的源代码为基础。我添加了num
string
变量。 num
用于在每次迭代中构建数字string
,并在每次外循环迭代中重置。为了构建各自的string
,我们在内部循环中使用行num = num + str(j)
。 +
在此处用于连接两个strings
和str()
,以将integer
j
转换为string
。在内部循环中迭代各个数字并创建相应的string
之后,在每个外部循环迭代的结尾,我们放置print
语句。在那里int()
用于将创建的string
转换为integer
。
for i in range(1,10):
num = ''
for j in range(1,i+1):
num = num + str(j)
print(int(num))
输出
1
12
123
1234
12345
123456
1234567
12345678
123456789
例如,您现在可以稍微调整print(int(num))
行到print(int(num)*8)
的位置,将每个打印的数字乘以8
。
然后将输出:
8
96
984
9872
98760
987648
9876536
98765424
987654312
答案 2 :(得分:0)
要生成一个长整数,首先需要将数字转换为字符串。
for i in range(1,10):
tmp_code = ""
for j in range(1,i+1):
# convert the number to string
tmp_code += str(j)
print(tmp_code)
那么您将得到:
1
12
123
1234
12345
123456
1234567
12345678
123456789