我正在尝试从字符串中逐字符删除(每次单个字符以查看字符串的外观)
var = 'string'
var1 = ''
cor = []
for i in range(0, len(var)):
varl = var[:i] + var[(i+1):]
cor.append(varl)
print (cor)
这就是我要得到的
['t', 'sr', 'sti', 'strn', 'strig', 'tring', 'sring', 'sting', 'strng', 'strig', 'strin']
我不知道为什么要获得列表中的前5个元素,它们不应该存在。 有谁知道如何解决这个问题,谢谢。
答案 0 :(得分:0)
没有任何理由不这样做。但是,使用列表理解,看到它解决了你的问题:
var = 'string'
cor = [var[:i] + var[i+1:] for i in range(len(var))]
print (cor)
返回
['tring', 'sring', 'sting', 'strng', 'strig', 'strin']
输出看起来很奇怪的主要原因是循环应该添加len(var)变量max。
for i in range(0, len(var)):
答案 1 :(得分:0)
在变量定义中,您将第二个变量定义为var1
(即var' one'),在for循环中,您有varl
(即var' ; EL'。)
将循环中的varl
更改为var1
,您就会得到您期望的结果。