python中文字符_python处理中文字符
1.在py文件中使用中文字符
unicode.py文件内容如下所示:
# -*- coding:utf-8 -*-
str_ch = '我们women'
uni_ch = u'我们women'
print "type:", type(str_ch), "content:", str_ch, repr(str_ch)
print "type:", type(uni_ch), "content:", uni_ch, repr(uni_ch)
需要在文件第一行输入以下内容:“# -*- coding: utf-8 -*-",否则在执行时将会抛出如下异常信息。
SyntaxError: Non-ASCII character '\xe6' in file unicode.py on line 3, but no encoding declared;
在声明编码类别后,执行结果如下:
type: content: 我们women '\xe6\x88\x91\xe4\xbb\xacwomen'
type: content: 我们women u'\u6211\u4eecwomen'
使用命令“od -t c unicode.py”查看文件在硬盘上的内容如下:
0000000 # - * - c o d i n g : u t f
0000020 - 8 - * - \n \n s t r _ c h =
0000040 ' 346 210 221 344 273 254 w o m e n ' \n u
0000060 n i _ c h = u ' 346 210 221 344 273 254
0000100 w o m e n ' \n \n p r i n t " t
0000120 y p e : " , t y p e ( s t r _
0000140 c h ) , " c o n t e n t : " ,
0000160 s t r _ c h , r e p r ( s
0000200 t r _ c h ) \n p r i n t " t y
0000220 p e : " , t y p e ( u n i _ c
0000240 h ) , " c o n t e n t : " ,
0000260 u n i _ c h , r e p r ( u n
0000300 i _ c h ) \n
注:346为8进制。
可以看到中文字符在硬盘中以utf-8形式保存,在执行时被python解释器读入内存,遇到非ascii字符时,需要用指定的编码进行转换。
2. Python中字符类型str和unicode
Unicode使用code point描述字符,一个code point就是一个整数值,16-bit。所以,unicode字符串就是一串code point。
书写的方式可以是:
uni_str = u"我们"
uni_str = u"\xac" # 2个16进制数表示
uni_str = u"\u1234" # 4个16进制数表示
uni_str = u"\U00008000" # 8个16进制数表示
str是8bit,从0-255。书写方式如下:
s = '0'
s = '\x30'
s = '\060'
s = chr(48)
# ord(s) 都是48
encoding:将unicode字符串转换成一串bytes(0-255)。
python默认的encoding和decoding都是ascii,当数值超过128时都将会报编码或解码错误。
python中文字符_python处理中文字符相关推荐
- python正则匹配任意字符_Python 匹配任意字符(包括换行符)的正则表达式写法...
Python 匹配任意字符(包括换行符)的正则表达式写法 想使用正则表达式来获取一段文本中的任意字符,写出如下匹配规则: (.*) 结果运行之后才发现,无法获得换行之后的文本.于是查了一下手册,才发现 ...
- python加中文注释_Python使用中文注释和输出中文(原创)
刚开始学习python,需要在Python中注释中文和输出中文,现在开始尝试: 仅为初步学习参考,高手请绕行. -------------------------------------------- ...
- python的变量名可以是中文吗_Python中用中文变量名、函数名,会影响性能吗?
首先,python这样的语言,只能做有限的"词法编址"(lexical address),不可能实现 @王加加 所说的"所有变量名函数名等名称,在转成字节码后,只是一个个 ...
- python可打印字符_python不可打印字符有哪些
python不可打印字符有哪些 发布时间:2020-09-24 15:46:57 来源:亿速云 阅读:65 作者:Leah 今天就跟大家聊聊有关python不可打印字符有哪些,可能很多人都不太了解,为 ...
- sql数字转换为字符_Python|图片转换为字符画^_^
我们很清楚什么是图片,无外乎png.jpg等格式的文件,例如这个? 但什么是字符画呢?先看一下官方介绍: 字符画,一种由字母.标点.汉字或其他字符组成的图画.简单的字符画是利用字符的形状代替图画的线条 ...
- python怎么统计多少字符_python统计中文字符数量的两种方法
方法一: def str_count(str): '''找出字符串中的中英文.空格.数字.标点符号个数''' count_en = count_dg = count_sp = count_zh = c ...
- python数字转中文字符_Python实现中文数字转换为阿拉伯数字的方法示例
本文实例讲述了Python实现中文数字转换为阿拉伯数字的方法.分享给大家供大家参考,具体如下: 一.需求 今天写了三千二百行代码. 今天写了3200行代码. 两行意思相同,只是表达方式不太能够,统一掉 ...
- python统计出现的中文标点_Python处理中文标点符号大集合
中文文本中可能出现的标点符号来源比较复杂,通过匹配等手段对他们处理的时候需要格外小心,防止遗漏.以下为在下处理中文标点的时候采用的两种方法: 中文标点集合 比较常见标点有这些: !?。"#$%& ...
- 阿里云python中文社区_python写中文
字符串 你的源代码中包含中文的时候,在保存源代码时,就需要务必指定保存为UTF-8编码.当Python解释器读取源代码时,为了让它按UTF-8编码读取,我们通常在文件开头写上这两行: ```pytho ...
最新文章
- Xilinx® 7 series FPGAs CLBs专题介绍(二)
- warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失...
- python—多线程之守护线程
- 针对媒体不实报道误导大众--抹黑C#工资垫底
- Tensorflow入门神经网络代码框架
- Maven项目下update maven后Eclipse报错:java.lang.ClassNotFoundException: ContextLoaderL
- ActiveRecord模式整理
- Linux 文件 IO
- Win10右键没有压缩选项的解决教程
- UI设计素材|卡券界面设计
- 程序员面试金典——4.3高度最小的BST
- Labview2018学习之三:LabVIEW编程
- linux 内核 谁在维护,[转载]Linux 内核维护者封杀明尼苏达大学
- html 两个input挨着,欧洲区预选赛直播 -官方网站
- 百度二级域名大全 目前为234个http://www.twocity.cn/blog/article.asp?id=818
- C语言小项目实践——日历程序
- 小学生计算机校本课程教材,二年级校本课程教材
- 子佩短信管家 v1.0.0
- 笃静守一,深耕匠设:2018“渲云杯”全国空间表现大赛颁奖盛典
- 出版现状:以前出书有多简单,现在出书就有多难!