[英]How to convert sublist to list
我下面有這樣的清單,
[
'August 28, 2017',
'gilbert arizona',
'33.3528264',
'-111.789027',
'1236 Feet',
"[u' ASCE 7* Ground Snow LoadElevation 2,000 feet', u' Ground Snow Load is0 psf']"
]
我想把它轉換成表格
[
'August 28, 2017',
'gilbert arizona',
'33.3528264',
'-111.789027',
'1236 Feet',
'ASCE 7* Ground Snow LoadElevation 2,000 feet',
' Ground Snow Load is0 psf'
]
我同意cricket_007,您確實應該從源頭上解決這個問題,因為它的數據格式不正確,任何解決方案都將很脆弱並且容易中斷。 就是說,如果您只需要快速而又骯臟的東西,則應該在避免使用不安全的eval
函數的同時執行以下操作:
from ast import literal_eval
def flatten(iterable):
result = []
for item in iterable:
try:
item_eval = literal_eval(item)
if not isinstance(item_eval, list):
raise ValueError()
except (ValueError, SyntaxError):
result.append(item)
else:
result.extend(flatten(item_eval))
return result
>>> data = [
... 'August 28, 2017',
... 'gilbert arizona',
... '33.3528264',
... '-111.789027',
... '1236 Feet',
... "[u' ASCE 7* Ground Snow LoadElevation 2,000 feet', u' Ground Snow Load is0 psf']"
... ]
>>> flatten(data)
['August 28, 2017', 'gilbert arizona', '33.3528264', '-111.789027', '1236 Feet', u' ASCE 7* Ground Snow LoadElevation 2,000 feet', u' Ground Snow Load is0 psf']
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.