从文本文件字符串中删除所有引号

2024-05-14 12:41:49 发布

您现在位置:Python中文网/ 问答频道 /正文

def organize_data(location='G:\pythonFiles\problem 22.txt'):
    with open(location) as f:
        name_string = f.read().replace('\n', '')
        name_string.replace('"', '')
        names = name_string.split(',')
    return names

print organize_data()

似乎replace方法不起作用,因为不管有没有它,我都会得到相同的结果:['"MARY"', '"PATRICIA"', '"LINDA"', '"BARBARA"',.....]

如何删除所有"并返回这样的列表:['MARY', 'PATRICIA', 'LINDA', 'BARBARA',.....] ``在


Tags: nametxtdatastringnamesdeflocationreplace
2条回答

首先,使用openwithencoding,name_string.replace('"', '')表示您正在使用utf-8。 试试这个

def organize_data(location='G:\pythonFiles\problem 22.txt'):
    with open(location, "r", encoding="utf-8") as f:
        name_string = f.read()replace('\n', '')
        name_string = name_string.replace('"', '')
        names = name_string.split(',')
    return names

print organize_data()

Python中的字符串是不可变的,因此string方法不能就地修改字符串。而是返回字符串的修改版本。在

name_string.replace('"', '')作为单独的语句不执行任何操作。它返回去掉双引号的字符串,但返回值不存储在任何地方。所以你应该用

name_string = name_string.replace('"', '')

相反。在

相关问题 更多 >

    热门问题