3 回答

TA贡献1842条经验 获得超12个赞
问题是,num = str(L1)将转换整个 L1列表为一个字符串,但你只是想在转换元素的L1列表转换为字符串。
尝试这个:
path = [str(i) + ";1" for i in range(0,3,1)]
for line in path:
print(line)
输出:
0;1
1;1
2;1

TA贡献1784条经验 获得超9个赞
试图按照你的逻辑,我猜:
L1 = [str(i) for i in range(0,3,1)]
#=> ['0', '1', '2']
所以,放在一起:
L1 = [str(i) for i in list(range(0,3,1))]
L2 = ';1'
path = [i + L2 for i in L1 ]
print(path)
#=> ['0;1', '1;1', '2;1']
然后,您可以遍历路径元素以根据需要将其打印出来。

TA贡献1828条经验 获得超4个赞
如果你试图print(num)在第二行之后,你会意识到,num = '[0, 1, 2]'或num = 'range(0, 3)'取决于你的编译器,它已经是一个字符串。这就是为什么当你试图循环时num,你得到了所有这些东西。
相反,请尝试:
L1 = range(0,3,1)
num = str(L1)
L2 = ';1'
for i in L1:
print(str(i) + L2)
或者
path = [str(i) + L2 for i in L1]
如果你想把它们放在一个列表中。
添加回答
举报