python3x版本的默认编码是_python-3.x – python 3.0 open()默认编码

我试图计算JSON文件中的行.

Click HERE to access my JSON file .

我尝试使用下面的代码来计算行数.

input = open("json/world_bank.json")

i=0

for l in input:

i+=1

print(i)

但上面的代码抛出了UniCodeDecode错误,如下所示.

---------------------------------------------------------------------------

UnicodeDecodeError Traceback (most recent call last)

in ()

2

3 i=0

----> 4 for l in input:

5 i+=1

6

C:\Users\Subbi Reddy\AppData\Local\Continuum\Anaconda3\lib\encodings\cp1252.py in decode(self, input, final)

21 class IncrementalDecoder(codecs.IncrementalDecoder):

22 def decode(self, input, final=False):

---> 23 return codecs.charmap_decode(input,self.errors,decoding_table)[0]

24

25 class StreamWriter(Codec,codecs.StreamWriter):

UnicodeDecodeError: 'charmap' codec can't decode byte 0x81 in position 3979: character maps to

然后我在open函数中包含了编码参数,如下所示.

input = open("json/world_bank.json",encoding="utf8")

然后它开始工作并输出为500.

据我所知,python open应该将“utf8”视为默认编码.

我在这里错了.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值