Jam*_*fun 3 python string methods list
a = [',', 'hello',',', 'pear']
for i in a:
d = 0
c = []
b = a[d]
if b == ',':
c.append(b)
d += 1
else:
d += 1
print c
Run Code Online (Sandbox Code Playgroud)
当代码中有两个逗号时,这似乎只返回一个逗号.我怎样才能解决这个问题?
问题是你d
在每次迭代开始时重置为零,并清除c
.
您需要在循环外部移动初始化代码.
在执行此操作时,您可以像这样简化整个循环:
a = [',', 'hello',',', 'pear']
c = []
for b in a:
if b == ',':
c.append(b)
print c
Run Code Online (Sandbox Code Playgroud)
现在观察这样的代码非常适合表达为列表理解:
a = [',', 'hello',',', 'pear']
c = [b for b in a if b == ',']
print c
Run Code Online (Sandbox Code Playgroud)