【发布时间】:2020-05-15 20:00:17
【问题描述】:
我使用 csv reader 读取 csv 文件,然后使用字典将其转换为 json 文件。
这样做时,我只想要没有非 ascii 字符或 nbsp 的字母和数字。我正在尝试这样做:
with open ('/file', 'rb') as file_Read:
reader = csv.reader(file_Read)
lis = []
di = {}
for r in reader:
di = {r[0].strip():[some_val]}
lis.append(di)
with open('/file1', 'wb') as file_Dumped:
list_to_be_written = json.dumps(lis)
file_Dumped.write(liss)
当我读取文件时,输出包含像\xa0\xa0\xa0\xa0 这样的序列以及键。
前 - {"name \xa0\xa0\xa0\xa0":[9]}
如果我执行json.dumps(lis,ensure_ascii=False),那么我会看到按键周围有空格。
前 - {"name ":[9]}
如何完全删除除字母和数字之外的所有内容?
【问题讨论】:
-
import stringprintable = set(string.printable)''.join(filter(lambda x: x in printable, list_to_be_written)) -
@HarishKumar 非常有帮助,先生。我添加了 strip(),它给了我想要的结果。
标签: python ascii non-ascii-characters python-unicode