已更新(對不起,這是我的第一個問題)在Python中使用分隔符分隔列表
我是一名實習生,並且非常熟悉編碼。
在我的工作中,我必須從Azure存儲中讀取文件,然後將此數據插入到數據庫中。
要做到這一點,我使用get_file_to_text().content
和可變file
存儲其值如下:
file = file_service.get_file_to_text('teste','','Retorno.csv').content
,然後,我用.splitlines()
這樣的:
formFile.append(file.splitlines())
我期待這樣的結果(我的文件的每一行都是一個子列表):
[['2017-08-01', 'Zabbix server Sura', 'system.cpu.load[percpu,avg5]', '0.2900', '0.05217361111111111111', '0.1'], ['2017-08-01', 'Zabbix server Sura', 'system.cpu.util[,iowait]' ... ]
但我有這個(一個大的子表的所有行內):
[['2017-08-01;Zabbix server Sura;system.cpu.load[percpu,avg5];0.2900;0.05217361111111111111;0.1', '2017-08-01;Zabbix server Sura;system.cpu.util[,iowait]; ... ']]
我也嘗試了.split(';')
:
file2 = file.split(';')
但給我返回一個只有值的列表:
['2017-08-01', 'Zabbix server Sura', 'system.cpu.load[percpu,avg5]', '0.2900', '0.05217361111111111111', '0.1\n2017-08-01', 'Zabbix server Sura', 'system.cpu.util[,iowait]', ...]
我能做些什麼來得到我期待的結果?
謝謝!
更新(已解決):
我做到了這一點,它工作正常。
data = []
azurestorage_text = file_service.get_file_to_text('teste', '',
'Retorno.csv').content
with StringIO(azurestorage_text) as file_obj:
reader = csv.reader(file_obj, delimiter=';')
header = next(reader)
for line in reader:
data.append(line)
你在找什麼是'.split()'方法的字符串obj – Vinny
你已經給出了許多與你的核心問題無關的細節。 [編輯](https://stackoverflow.com/posts/46201295/edit)它更專注於幫助潛在的回答者。 – JETM
瞭解如何創建[mcve]。 –