-1
string = "hello world i'm a new program"
words_length = []
length = 21
我使用re.split
生產單詞和空間的列表:爲什麼列表刪除功能不會刪除空格?
words = re.split('\w', string)
這樣:
words = ['hello', ' ', 'world', ' ', 'i', "'", 'm', ' ', 'a', ' ', 'new', ' ', 'program']
for x in words:
words_length.append(len(x))
for x in range(len(words)):
if words_length < length:
words_length += letters_length[x]
line += words[x]
del words[x]
,但最後當我打印的變量,我得到:
line = "helloworldi'manew"
words = [' ', ' ', ' ', ' ', ' ', 'program']
但我想要的是:
line = "hello world i'm a new"
words = ['program']
我該如何設法做到這一點?
您正在跳過索引。試着用[['','a','','b','']'來看看這與空間無關。 –
另外,'letters_length'和'length'是什麼? –
在遍歷它的時候修改一個序列通常是一個壞主意。 –