【发布时间】:2018-10-30 18:31:45
【问题描述】:
对于列表中字符串的每个元素,我需要将第一次出现的1 更改为0,但这会改变一切:
a, b = input().split()
a = int(a)
d=[]
for x in range(1,a+1):
globals()['side%s' % x] = input("Enter something: ")
d.append(globals()['side%s' % x])
d = [s.replace('1', '0') for s in d]
print(d)
例子:
4 1 // 4 number of inputs, 1 - number of possible changes to string
0101
0010
0100
1000
需要
0001
0000
0000
0000
【问题讨论】:
-
你能更好地解释你想要达到的目标吗?
-
如果我理解正确,您只想用
0替换第一次出现的1并保持其他出现不变? -
是的,每个项目只出现一次
-
@Bad.coder 这是stackoverflow.com/questions/4628618/… 的副本。答:
replace()采用可选的第三个参数,即替换的最大次数。例如,replace('1', '0', 1)将仅对第一个实例执行替换