您的位置:首页 > 教育 > 锐评 > 免费css网站_个人网站的搭建_手机制作网站app_添加友情链接的技巧

免费css网站_个人网站的搭建_手机制作网站app_添加友情链接的技巧

2025/8/20 13:33:44 来源:https://blog.csdn.net/weixin_49114503/article/details/144082615  浏览:    关键词:免费css网站_个人网站的搭建_手机制作网站app_添加友情链接的技巧
免费css网站_个人网站的搭建_手机制作网站app_添加友情链接的技巧

文章目录

  • 一、报错场景
  • 二、报错原因
  • 三、解决方法
  • 四、可能遇到的问题
    • ascii' codec can't encode character u'\u3000' in position 0: ordinal not in range(128)

一、报错场景

在python2.7中使用chr(12288)填充中文空格,出现以下错误:

print(chr(12288))报错内容如下:
====================
D:\App\python\python2.7.13\Python27\python.exe D:\WorkSpace-Python\Test\test.py 
Traceback (most recent call last):File "D:\WorkSpace-Python\Test\test.py", line 3, in <module>print(chr(12288))
ValueError: chr() arg not in range(256)

二、报错原因

报错原因是Python2.7中chr( K ) 将编码K 转为字符,K的范围是 0 ~ 255
而python 3.0中,chr( K ) 将编码K 转为字符,K的范围是 0 ~ 65535

chr(12288)在python3中表示中文空格

三、解决方法

1、Python2.7中

普通空格字符串chr(32)表示英文空格(半角空格)
\u0020(半角空格)\u3000(全角空格)

# -*- coding: UTF-8 -*-
import sysreload(sys)
sys.setdefaultencoding('utf-8')print("|{0}|".format(" ")) # 英文空格
print("|{0}|".format(chr(32))) # 英文空格
# 半角空格
half_space = u'\u0020'
print("|{0}|".format(half_space))print("|{0}|".format(" ")) # 全角空格
# 全角空格
full_space = u'\u3000'
print("|{0}|".format(full_space))输出结果为:
=========================
D:\App\python\python2.7.13\Python27\python.exe D:\WorkSpace-Python\Test\test.py 
| |
| |
| |
| |
| |

整数32对应于ASCII字符集中的空格(space)。

2、python3中
chr(12288)、\u3000表示中文空格(全角空格)

print("|  |")
# 全角空格
full_space = u'\u3000'
print("|{0}|".format(full_space))
print("|我|")输出结果为:
=============================
D:\App\python\python3.13.0\python.exe D:\WorkSpace-Python\Test\test.py 
|  |
| |
||

四、可能遇到的问题

ascii’ codec can’t encode character u’\u3000’ in position 0: ordinal not in range(128)

1、报错场景
python2.7中输出unicode字符,但是报错了。代码如下:

# -*- coding: UTF-8 -*-# 全角空格
full_space = u'\u3000'
print("|{0}|".format(full_space))输出内容:
=======================
D:\App\python\python2.7.13\Python27\python.exe D:\WorkSpace-Python\Test\test.py 
Traceback (most recent call last):File "D:\WorkSpace-Python\Test\test.py", line 5, in <module>print("|{0}|".format(full_space))
UnicodeEncodeError: 'ascii' codec can't encode character u'\u3000' in position 0: ordinal not in range(128)

2、报错原因
Unicode编码错误:“ascii”编解码器无法对0-3位置的字符进行编码:序号不在范围内(128)

一些字符串无法被ascii解码

3、解决方法
在代码头中加入以下部分即可

# -*- coding: UTF-8 -*-
import sysreload(sys)
sys.setdefaultencoding('utf-8')

修改后代码:

# -*- coding: UTF-8 -*-
import sysreload(sys)
sys.setdefaultencoding('utf-8')# 全角空格
full_space = u'\u3000'
print("|{0}|".format(full_space))运行结果:
===========================
D:\App\python\python2.7.13\Python27\python.exe D:\WorkSpace-Python\Test\test.py 
| |

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com