Python 你如何改进这一点

Python 你如何改进这一点,python,pandas,numpy,csv,Python,Pandas,Numpy,Csv,我编写的这个脚本(我对Python和编程非常陌生)用于通过CSV。我让它工作,但这是一个非常基本的脚本,我还需要CSV有3列,否则它就不工作了,而且我有一个问题,当CSV的列是“0”时,它匹配我要删除的字符串,并且只删除“0”,我不希望发生这种情况 此外,任何我可以添加的改进或附加功能都是受欢迎的。我希望使我的代码总体上更“可靠” 我的代码如下: # -*- coding: utf-8 -*- import pandas as pd import numpy as np # ruta de

我编写的这个脚本(我对Python和编程非常陌生)用于通过CSV。我让它工作,但这是一个非常基本的脚本,我还需要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")

如需改进,请参阅此处,您可以使用列表理解而不是使用
For
循环来附加列表。您需要发布其他人可以运行的代码,否则很难帮助您。您的数据是什么样子的?同时,建议:只需使用
pandas
编写您的CSV,在打开文件时使用
with