你如何改善这个

时间:2019-10-09 06:32:55

标签: python pandas numpy csv

我制作的这个脚本(我对Python和程序设计非常陌生)用于CSV see my question here。我可以使用它,但是它是一个非常基本的脚本,我也需要CSV恰好具有3列,否则它不起作用,当CSV的列为'0'时,我也遇到了问题,它与我想要的字符串匹配删除并仅删除“ 0”,我不希望发生这种情况。

此外,我可以添加任何改进或增加的功能。我想使我的代码总体上更“坚固”。

我的代码如下:

# -*- coding: utf-8 -*-


import pandas as pd
import numpy as np

# ruta de la carpeta donde esta el archivo
path = "C:\\trabajos\\Schweppes\\"
# nombre del archivo csv
df = pd.read_csv(path + "csv_schewepps.csv", sep=";", encoding = 'utf8')

# ruta y nombre del archivo
archivo = open("C:\\trabajos\\Schweppes\\csv_schewepps.csv", 'r+', errors = 
'ignore', encoding = 'utf8')
# ruta y nombre de un archivo nuevo que se creara
resultado = open("C:\\trabajos\\Schweppes\\csv_schewepps1.csv", 'w', errors 
= 'ignore', encoding = 'utf8')

lista_cp = []
for x in range(-1, len(df.index)):
    lista_cp.append(np.str(df.iloc[x, 1]))

lista_ln = []
for linea in archivo:
    lista_ln.append(linea)

for i in range(0, (len(df.index) + 1)):
    if lista_ln[i].count(lista_cp[i]) > 1:
        nuevo = lista_ln[i].replace(lista_cp[i], "")
        resultado.write(nuevo)
    else:
        resultado.write(lista_ln[i])

# aqui pones el archivo resultado que te ha salido antes
# sino se ejecuta todo de golpe, se ejecuta hasta la linea 29 y se ejecuta 
esta parte
df_2 = pd.read_csv(path + "csv_schewepps1.csv", sep=";")

df_2['cod_postal'] = df['cod_postal']

# el resultado lo crea en un nuevo csv. Este es el resultado final
df_2.to_csv(r"C:\\trabajos\\Schweppes\\csv_schewepps_fin.csv", index=None, 
header=True, sep=";")

archivo.close()
resultado.close()
print ("Fin del script")

0 个答案:

没有答案