我有一个包含数据读取的CSV文件,我想读入Python.我得到包含字符串的列表"2,5".现在做的float("2,5")不起作用,因为它有错误的小数点.
我如何将其作为Python阅读2.5?
如何使用Python检测用户机器中的列表分隔符?
需要在用户计算机上创建CSV文件,并且必须自动检测列表分隔符(以便excel可以读取CSV文件).
我发现Excel从"区域选项 - >数字 - >列表分隔符"中获取CSV元素分隔符.Python中的locale模块用于检测文化设置,但它(locale.localeconv)不包含列表分隔符.用dialect ='excel'打开CSV编写器没有帮助.知道如何获得正确的分隔符吗?
编辑
以下代码似乎有效(但不能接受任何upvotes,因为解决方案不是我的)
import locale
langlocale = locale.getdefaultlocale()[0]
locale.setlocale(locale.LC_ALL, langlocale)
dp = locale.localeconv()['decimal_point']
delimiter = ','
if dp == ',':
delimiter = ';'
Run Code Online (Sandbox Code Playgroud)