簡體   English   中英

使用 python 以正確的格式將列表插入 csv

[英]Inserting a list into csv with proper format using python

我有一個包含字符串項目的列表。 清單如下:

mylines = ['Status Name               DisplayName', 'Running MSSQL$DEV          SQL Server (DEV)', 'Running MSSQL$TEST         SQL Server (TEST)', 'Running MSSQLLaunchpad$DEV SQL Server Launchpad (DEV)', 'Running SQLAgent$DEV       SQL Server Agent (DEV)', 'Running SQLAgent$TEST      SQL Server Agent (TEST)', 'Running SQLBrowser         SQL Server Browser', 'Running SQLTELEMETRY$DEV   SQL Server CEIP service (DEV)', 'Running SQLTELEMETRY$TEST  SQL Server CEIP service (TEST)', 'Running SQLWriter          SQL Server VSS Writer']

我想將此列表插入到 csv 文件中,使 Status Name 和 DisplayName 成為列標題,整個格式如下:

在此處輸入圖像描述

我使用了以下代碼:

Import pandas as pd
df = pd.DataFrame(mylist)
df.head()

並出現以下情況:

在此處輸入圖像描述

這是不正確的,因為它只創建一個列而不是兩個單獨的狀態名稱和顯示名稱列。 如何正確創建 dataframe?

您可以嘗試使用多個空格拆分列表中的項目。 並在沒有 header 和索引的情況下將 dataframe 導出到 csv 和索引,以便第一行與 Z099FB995346F331C5E4 一樣。

import pandas as pd

df = pd.DataFrame([filter(len, item.split('  ')) for item in mylist])

df.to_csv('your_csv', header=None, index=False)

如果您所有的DisplayName都有標題SQL Server ,您可以這樣做

df = pd.DataFrame([item.split('SQL Server') for item in mylist[1:]], columns=['Status Name', 'DisplayName'])
df['DisplayName'] = 'SQL Server' + df['DisplayName']

# Remove heading and tailing spaces in column `Status Name`
df['Status Name'] = df['Status Name'].str.strip()

嘗試:

df[['A', 'B']] = df['AB'].str.split('    ', 1, expand=True)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM