Python 如何在CSV文件中用逗号替换分号?

Python 如何在CSV文件中用逗号替换分号?,python,csv,Python,Csv,我试图编写Python代码,在给定的CSV文件中,我用分号替换逗号,例如 我想转这个:玛丽,彼得,2.8 这个:玛丽;彼得;2,8 这是我当前的代码,但它不起作用…当我上传CSV文件时,它不会将逗号替换为分号 import csv name3 = input("Name your CSV file:" ) import os.path while not os.path.isfile(name3): print('File {0} not found.'.format(name3)) n

我试图编写Python代码,在给定的CSV文件中,我用分号替换逗号,例如

我想转这个:玛丽,彼得,2.8

这个:玛丽;彼得;2,8

这是我当前的代码,但它不起作用…当我上传CSV文件时,它不会将逗号替换为分号

import csv
name3 = input("Name your CSV file:" )
import os.path
while not os.path.isfile(name3):
  print('File {0} not found.'.format(name3))
  name3 = input('Name your CSV file: ')
f3 = open(name3,'r')
name4 = input('Name your exit file:')
f4 = open(name4,'w')

c = f3.read(1) 
while c == ',' :
    c = f4.replace(",",";")
    f4.write(c)
    c = f3.read(1)

c1 = f3.read(1)
while c1 == '.' :
    c1 = f4.replace(".",",")
    f4.write(c1)
    c1 = f3.read(1)

f3.close()
f4.close()
您导入的应用程序可以非常轻松地执行此操作,如下所示:

import csv
import os


name3 = input("Name your CSV file: ")

while not os.path.isfile(name3):
    print('File {} not found.'.format(name3))
    name3 = input('Name your CSV file: ')

name4 = input('Name your exit file: ')

with open(name3, 'r', newline='') as f_input, open(name4, 'w', newline='') as f_output:
    csv.writer(f_output, delimiter=';').writerows(csv.reader(f_input))

默认情况下,
csv.reader()
将读取逗号分隔的行。然后可以使用
csv.writer()
编写所有行,使用
作为分隔符。

您需要告诉我们它是如何工作的(错误消息),以便我们可以解决此问题。欢迎使用StackOverflow。然而,你的问题并不清楚。“用逗号替换分号”是什么意思?这是否意味着如果输入文件有逗号,那么输出文件应该使用分号?您对小数点的描述不太清楚。最后,“它不起作用”太模糊了。到底是什么不起作用?输入文件是什么,预期的输出文件是什么,您得到了什么,以及对任何错误的完整回溯是什么?值得注意的是,当您使用
格式()
表示法时,如果您只有一个var
name3
,您可以使用
{}
而不使用索引
0
!)另外,给我们一个,而不是你的整个计划-让我们很容易帮助你,因为张贴指南告诉你。消除用户输入的开销:硬编码这些文件名。只做一次替换——几乎可以肯定,您在两次过程中都犯了相同的错误,因此我们对其中一次的回答将立即提供另一次。此外,至少要开始尝试调试您的问题。此文件中没有跟踪
print
语句。您的各种问题之一是
f4
不是字符串,因此无法替换项。。。而
c
几乎肯定不是一个字符。