python的新手,希望有人可以帮助我。 这里说的是一个字符串
string = "LLLLL"
但是,我想生成长度为“n”的字符串,其中n由用户指定,例如,当用户设置n = 2时,则
string = "LL"
当用户设置n = 10时,则
string = "LLLLLLLLLL"
我该怎么做?提前谢谢。
此外,我还想生成如下列表,当然,用户指定“n”,如果n = 7,那么
rowname = ["c1","c2","c3","c4","c5","c6","c7"]
怎么做到这个?非常感谢你。
答案 0 :(得分:1)
'L'
乘以n
:
>>> 'L' * 10
'LLLLLLLLLL'
其他序列类型,如list,tuple,..也支持*
操作:
>>> ['a', 'b'] * 3
['a', 'b', 'a', 'b', 'a', 'b']
>>> bytearray([1,2,3]) * 2
bytearray(b'\x01\x02\x03\x01\x02\x03')
答案 1 :(得分:0)
使用*
将字符串乘以n
(必须是整数):
>>> n = 10
>>> 'L' * n
'LLLLLLLLLL'
>>> n = int(raw_input(':'))
:2
>>> 'L' * n
'LL'
>>>
请注意,如果您使用的是Python 3.x,则需要将raw_input
替换为input
。
修改强>
对于第二个问题,请使用list comprehension和str.format
:
>>> n = int(raw_input(':'))
:7
>>> ["c{}".format(x) for x in xrange(1, n+1)]
['c1', 'c2', 'c3', 'c4', 'c5', 'c6', 'c7']
>>>
如果您使用的是Python 3.x,则需要将xrange
替换为range
。