python处理中文字符

在Python中设置使用中文字体 将字体文件下载到计算机上的任意位置,并记住文件的路径。在Python中,我们经常需要处理和显示中文文本。为了确保正确显示中文字符,我们需要设置合适的字体。下面是一些详细的步骤,展示如何在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: <type 'str'> content: 我们women '\xe6\x88\x91\xe4\xbb\xacwomen'
type: <type 'unicode'> 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中的中文乱码问题。同时,根据具体需求选择合适的第三方库进行字符处理也是一个不错的选择。 阅读详情

相关推荐

使用cubeMX生成USB HID设备

本文主要介绍如何使用stm32开发板和cubeMX生成HID设备,供参考。

专注音频,高效工作,快乐生活! 970

简述Python处理中文字符(utf-8/ gbk/ unicode)

起源: gbk最先出现,用于编码中文字符,无法编码任意国家字符 Unicode为万国码,它每种语言中的每个字符设定了统一并且唯一的二进制编码,却没有规定这个二进制编码如何存储,而utf-8是Unicode的实现方式之一。个人理解Unicode码整体有一个特性,就是数值小的字符使用频率相对较高,而utf-8在编码时数值小的字符用的byte少,从而提高存储效率 Unicode字符集既可以用utf-8编码方式编成计算机能够识别的二进制数值,也可以用utf-16,utf-32等方式编码。 Python2默认是ASC

tongjingqi_的博客 4739

UE4免费资产库新玩法:Quixel Bridge插件安装与Megascans资源导入全攻略

本文详细介绍了如何在UE4中安装Quixel Bridge插件并导入Megascans资源,帮助开发者快速获取高质量3D资产。通过分步教程和实用技巧,提升游戏或影视场景的制作效率,特别适合需要真实感环境的项目。

weixin_27729671的博客 364

Python的中文处理

<br />转自www.chinaunix.net上pFreeStyle的帖子:<br /><br />Python的中文处理<br /><br />一、使用中文字符<br />在python源码中如果使用了中文字符,运行时会有错误,解决的办法是在源码的开头部分加入字符编码的声明,下面是一个例子:<br />#!/usr/bin/env python<br /># -*- coding: cp936 -*-<br />Python Tutorial中指出,python的源文件可以编码ASCII以外的字符集,

frymgump的专栏 608

Android 12 HAL开发避坑实录:手把手教你用AIDL在Native层实现一个可开机自启动的Service

本文详细介绍了在Android 12 HAL开发中,如何通过AIDL在Native层实现一个可开机自启动的Service。从环境准备、AIDL接口定义、服务实现到VINTF集成与SELinux策略配置,提供了完整的实战指南,帮助开发者避开常见陷阱,提升开发效率。

weixin_28314575的博客 321

Stm32L0 STM32CUBE中UART和使用LPUART1以及串口不进中断问题解决

/* 开启串口1中断 */ LL_USART_EnableIT_RXNE(LPUART1); /* 开启串口2中断 */ LL_USART_EnableIT_RXNE(USART2);

シ❤゛甜虾的个人博客 7686

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_c...

weixin_39838829的博客 519

Cursor锁机了怎么办?实测这个开源插件帮你无限“续杯”,附详细安装与防踩坑指南

本文提供了Cursor锁机问题的详细解决方案,包括使用开源插件`cursor-fake-machine`修改机器标识、锁定配置文件权限以及优化使用规范。同时介绍了如何利用Cursor开发油猴脚本将微信公众号文章高效转换为Markdown格式,提升内容创作效率。

weixin_26805597的博客 766

【python】 json中文字符处理

如果JSON中包含中文字符,我们将其写入文件中会怎样呢? import json data = [{ 'name': '张三', 'gender': '男', 'birthday': '1992-11-11' }] with open('data.json', 'w') as file: file.write(json.dumps(data, indent=...

在路上 3196

某智能物流无人值守系统 ExportReport SQL注入漏洞复现

某智能物流无人值守系统 ExportReport存在SQL注入漏洞,未经身份验证的远程攻击者除了可以利用 SQL 注入漏洞获取数据库中的信息(例如,管理员后台密码、站点的用户个人信息)之外,甚至在高权限的情况可向服务器中写入木马,进一步获取服务器系统权限。

0xSec 818

【网络安全 | 渗透工具】密码字典生成工具crunch、cupp安装使用教程

Crunch是一个常用的密码破解工具,它可以根据指定的字符集、长度和模式生成各种可能的密码并进行暴力破解。同时,Crunch可以将生成的密码保存到文件中,以便在破解工具中使用。在进行渗透测试时,手动收集密码字典是十分耗时的,利用密码字典生成工具可以大幅缩短时间,提高爆破宽度。

等风来 8421

python处理中文字符的一点经验

#!/usr/bin/env python #-*- coding:utf-8 -*- import sys, os import md5 destPath = r'h:\路径A\测试' srcPath = r'h:\路径B\测试' rstPath = r'h:\路径C\rst.txt' #----------------------------------------...

aqns80581的博客 782

Open3D 机载点云电力线提取【2025最新版】

传统方法实现的机载点云电力线分割提取。博客长期更新,本文最新更新时间为:2025年3月23日。

点云侠的博客 4468

python用法:处理sqlite中的中文字符时遇到的问题

python用法:处理sqlite中的中文字符时遇到的问题 python用法:处理sqlite中的中文字符时遇到的问题 - iihero@优快云 - 博客频道 - youkuaiyun.com python用法:处理sqlite中的中文字符时遇到的问题 2008-03-03 ...

141

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

python处理mysql中文字符长度

1、python文件头:# -*- coding: utf-8 -*- 2、mysql字段类型:utf8_general_ci,这个时候一个汉字长度为1 3、为保持通mysql一致,python代码中使用unicode字符串来判断含中文字符长度:      len(u"ddd我的") 或者 len(u"ddd我的".decode('utf-8'))

1498

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

python读写txt文件中文字符的处理

最近一个项目,需要保存中文字符和数字英文字母等到txt文件中,使用的python2.7,说实话,python2的编码问题真是个大坑! 花了半上午才解决问题,这里简单的总结一下。 python打开txt文件默认的是ascii编码,是无法处理中文字符的,所以需要统一转换为utf-8编码,这里使用codecs这个包,主要代码如下: import codecs res = codecs.open(...

weixin_37864196的博客 8536

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

python 中文字符的处理

刚开始学习python的时候,都是对这英文的翻译书学习的。没有解除到中文编码的相关问题,直到自己用python去做相关的项目的时候才发先中文编码问题真的非常头疼啊。这里分享一下本人所了解的一些经验。 读取utf-8个格式存储的文件 1. 假如现在有一个文件test.txt,里面有内容“python学习”,该文件以utf-8格式存储。那么读取并输出该字符串的方法如下: filehandle...

weixin_34097242的博客 325

python中文字符_python 中文字符的处理

刚开始学习python的时候,都是对这英文的翻译书学习的。没有解除到中文编码的相关问题,直到自己用python去做相关的项目的时候才发先中文编码问题真的非常头疼啊。这里分享一下本人所了解的一些经验。读取utf-8个格式存储的文件1. 假如现在有一个文件test.txt,里面有内容“python学习”,该文件以utf-8格式存储。那么读取并输出该字符串的方法如下:filehandle=open("t...

weixin_39875192的博客 670

python处理中文字符串_处理python字符串中的中文字符

# -*- coding:utf-8 -*-import sys,ostxta = open('a.txt','r')str = ''for line in txta:str += line.strip().decode('utf-8')txta.close()for word in str:print word.encode('utf-8')直接输出,是会乱码的,得先解码,再编码。参考网址:ht...

weixin_39951295的博客 1268

python json.dumps处理中文字符

开发一键开服功能时需要预置活动表,就是复制一个标准的库结构并导入一些预置活动数据。问题就出在导入的活动数导入前是中文,导入后变成的类似unicode编码那种格式。分析发现python mysqldb模块从mysql取的数据结果默认转换成了unicode编码,开服程序在用json.dumps转换时将unicode编码的标识符u给损耗掉了,导致mysqldb再插入数据时把它当成了普通的ascii编码插

click726的专栏 1076

python处理中文字符_python处理中文字符的一点经验

#!/usr/bin/env python#-*- coding:utf-8 -*-import sys, osimport md5destPath = r'h:\路径A\测试'srcPath = r'h:\路径B\测试'rstPath = r'h:\路径C\rst.txt'#-------------------------------------------------------------...

weixin_39796839的博客 100

Python中文字符处理解决方案

参考链接: 1. Python中文字符编码decode, encode以及乱码解决总结:  http://outofmemory.cn/code-snippet/1587/python-zhongwen-charaeter-coding-decode-encode-yiji-luanma-resolve-summary 2. Python UnicodeEncodeError: 'ascii

sarahpanee的专栏 1015

python2处理中文字符问题

在python2中,正常处理中文字符问题

技术博客 1万+

python re 处理中文字符的问题

python re 模块的使用,遇到中文字符的时候,需要把模式字符串和源字符串都解码!!! 使用python 的re模块~半天了还是出现错误 要处理文本:吉林省政府国有资产监督管理委员会党委委员、副主任王艺新接受组织调查 regex_str = r'\S*[市区弄号楼路道]' city_p

Alvin__Yang的博客 3672
上一篇: nginx配置数据结构及合并过程
下一篇: linux路由服务
wangst4321
博客等级 码龄16年 4粉丝 25原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值