python (3)编码的疑惑

1.说明下面代码中两行#

第一行注释是为了告诉Linux/OS X系统,这是一个Python可执行程序,Windows系统会忽略这个注释;

第二行注释是为了告诉Python解释器,按照UTF-8编码读取源代码,否则,你在源代码中写的中文输出可能会有乱码。

#!/usr/bin/env python
# -*- coding: utf-8 -*-
print u'中文测试正常'
print '----------------------------------------------'
print u'ASCII 编码, 一个字节'
print u'Unicode 编码, 通常是2个字节, java默认的就是这个'
print u'uf8 就是可变长编码的unicode, 根据不同1-6个字节, 英文1个字节, 汉字3个字节'
print u'计算机的内存中统一都是unicode, 我们平常用GBK保存的文本,加载到内存时会GBK-unicode的转化过程'
print u'我们屏幕上看到的内容都是从内存unicode转成对应的编码的'
print '没有u, 乱码'
print '----------------------------------------------'
print '\n'             #换行
print ''' '''          #换行
print 'line1'
print ""               #换行
print 'line2'

重点是要 u, 没有乱码


当我更改文件的编码格式后直接编译不同. 下面是unicode的效果


前面2片博文用的是

# -*- coding: cp936 -*-

GBK对应的code page是CP936, 表示GBK

微软也为GB18030定义了code page:CP54936
默认情况下,我们直接保存了文件就是GBK,window系统默认的


不知道大家明白了一点不.欢迎留言讨论.


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值