AnGus_16 发表于 2020-5-29 11:37:59

求大神解答

用python读取txt中元素含有中文的列表的时候,比如['小红','A',123]
用with open('data.txt','r',encoding='utf-8') as f:的话会破坏列表结构
想要保留列表形式应该怎么处理

Twilight6 发表于 2020-5-29 11:39:42

没看懂你发几个txt 数据看看

heidern0612 发表于 2020-5-29 11:41:57

本帖最后由 heidern0612 于 2020-5-29 11:44 编辑

存的话,一般都是存字符串格式的列表。

读完了之后赋值f,然后再拆分。

heidern0612 发表于 2020-5-29 11:44:03

本帖最后由 heidern0612 于 2020-5-29 11:45 编辑

参考这个:with open('a.txt','r',encoding='utf-8') as f:
    list1=f.read()
    print(list1)


其中a.txt就是你的那个列表。

AnGus_16 发表于 2020-5-29 13:54:54

Twilight6 发表于 2020-5-29 11:39
没看懂你发几个txt 数据看看

是我没有表达清楚
这是txt的内容
['小红','A',123]
命名为a.txt
然后用程序
with open('a.txt','r',encoding='utf-8') as f:
    list1=f.read()
    print(list1)
输出结果是[
我想要的是 print(list1)能输出小红
麻烦了

AnGus_16 发表于 2020-5-29 13:58:58

heidern0612 发表于 2020-5-29 11:44
参考这个:




不好意思,是我没有表达清楚
用您的代码如果是
print(list1)
输出结果是[
就是print(list1)的结果全部是中文标点
我想要的是 print(list1)能输出小红
麻烦了,谢谢

Twilight6 发表于 2020-5-29 13:59:55

本帖最后由 Twilight6 于 2020-5-30 06:39 编辑

审核重复

Twilight6 发表于 2020-5-29 14:00:28

本帖最后由 Twilight6 于 2020-5-30 06:39 编辑

审核重复

Twilight6 发表于 2020-5-29 14:01:02

本帖最后由 Twilight6 于 2020-5-30 06:39 编辑

审核重复

_荟桐_ 发表于 2020-5-29 14:07:13

AnGus_16 发表于 2020-5-29 13:54
是我没有表达清楚
这是txt的内容
['小红','A',123]


存的时候用pickle模块存进去,再用pickle读取
因为pickle存进去是什么类型,读出来就是什么类型
而普通的写入只能写入字符串

AnGus_16 发表于 2020-5-29 14:12:41

_荟桐_ 发表于 2020-5-29 14:07
存的时候用pickle模块存进去,再用pickle读取
因为pickle存进去是什么类型,读出来就是什么类型
而普通 ...

谢谢

AnGus_16 发表于 2020-5-29 14:13:17

谢谢大家,我搞明白了{:5_109:}
页: [1]
查看完整版本: 求大神解答