关于python 含有中文的文件名 错误处理

问题:

如图2,文件名带中文,run后报错 ,如图3,搜索资料后 发现 python 中的编码问题,字符串大概分为str和unicode两种形式,其中str常用的编码类型为u8,gb2312,gbk等,python使用unicode是作为基础类型。如图1,str记录的是字节数组,只是某种编码的存储格式,终于输出到文件或是打印出来是什么格式,完全取决于其解码的编码将他解码成什么样子;Unicode是一种类似于符号集的抽象编码,它只规定了符号的二进制代码,却没有规定这个二进制代码该如何存储,也就是它只是一种内部表示,不能直接保存,所以存储时需要规定一种存储形式,比如utf-8等 。

 

图1

 

图2

 

图3

 

解决:

python 文档规定open(filename, 'w') ,中的filename必须是Unicode编码,因文件头已经加了#coding=utf-8,所以在使用filename时需要将filename解码为unicode。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值