我有一個列表的動物如下爲什麼string.split(' n')在輸出列表中添加一個額外的元素?
animals = ['pets','dog\ncat\nchicken\ncow\n','wild','tiger\nlion\nrhino\n']
我想只寵物
pets = animals[1].split('\n')
打印(寵物)輸出[ '狗', '貓', '雞','一個單獨的列表母牛」,‘’] 寵物列表即‘的最後一個元素’是不希望的
下面的代碼行中刪除‘從列表中寵物’元素
pets = [i for i in animals[1].split('\n') if i]
請你解釋一下爲什麼前面的解決方案在列表中插入'''。另外,請在後面的解決方案中澄清列表理解中發生了什麼? 「如果我」代表什麼?
因爲最後有一個換行符。所以在最後一個新行字符上也會發生分裂,並因此產生兩個部分,即「牛」和空字符串。 –
你可以通過使用'animals [1] .strip()。split('\ n')'或'animals [1] .split()來避免它。' – Alik
這就是它應該是這樣的。即使PHP也一樣。 – Gogol