上一篇
Python ord()函数教程:获取字符的ASCII码值 | Python编程指南
- Python
- 2025-07-29
- 607
Python ord()函数:获取字符的ASCII码值
深入理解Python中ord()函数的工作原理及实际应用
什么是ord()函数?
Python内置的ord()
函数用于返回表示单个Unicode字符的整数(码点)。对于ASCII字符,这个整数就是字符的ASCII码值。
该函数的基本语法非常简单:
ord(character)
其中character
是一个长度为1的字符串(单个字符)。
ord()函数的基本用法
下面是一些基本示例,展示如何使用ord()函数获取字符的ASCII码值:
示例1:获取字母的ASCII码
# 大写字母 print(ord('A')) # 输出: 65 # 小写字母 print(ord('a')) # 输出: 97
示例2:获取数字字符的ASCII码
print(ord('0')) # 输出: 48 print(ord('5')) # 输出: 53 print(ord('9')) # 输出: 57
示例3:获取特殊字符的ASCII码
print(ord('@')) # 输出: 64 print(ord('#')) # 输出: 35 print(ord('$')) # 输出: 36 print(ord(' ')) # 空格字符,输出: 32 print(ord('\n')) # 换行符,输出: 10
ord()函数的实际应用
ord()函数在编程中有多种实际用途:
1. 字符分类
def char_type(c): code = ord(c) if 65 <= code <= 90: return "大写字母" elif 97 <= code <= 122: return "小写字母" elif 48 <= code <= 57: return "数字" else: return "其他字符" print(char_type('B')) # 大写字母 print(char_type('g')) # 小写字母 print(char_type('7')) # 数字 print(char_type('!')) # 其他字符
2. 简单的加密算法
def simple_encrypt(text, shift): result = "" for char in text: # 获取字符的ASCII码 code = ord(char) # 应用移位 encrypted_char = chr(code + shift) result += encrypted_char return result original = "Hello, World!" encrypted = simple_encrypt(original, 3) print(f"原始文本: {original}") print(f"加密文本: {encrypted}")
3. 字符转换
def to_uppercase(char): # 检查是否为小写字母 (97-122) code = ord(char) if 97 <= code <= 122: # 转换为大写字母 (减去32) return chr(code - 32) return char print(to_uppercase('a')) # 输出: 'A' print(to_uppercase('Z')) # 输出: 'Z' (不变) print(to_uppercase('5')) # 输出: '5' (不变)
注意事项
- ord()函数只接受单个字符作为参数,传入多个字符会导致TypeError
- ord()函数支持Unicode字符,而不仅仅是ASCII字符
- 与ord()对应的函数是chr(),它将整数转换为对应的字符
- ASCII码范围:0-127(标准ASCII),128-255(扩展ASCII)
错误处理示例
try: # 尝试传入多个字符 print(ord('abc')) except TypeError as e: print(f"错误: {e}") # 输出: ord() expected a character, but string of length 3 found
总结
ord()函数是Python中处理字符编码的基础工具:
- 用于获取字符的Unicode码点(对ASCII字符就是ASCII码值)
- 在文本处理、加密算法和字符转换中有广泛应用
- 与chr()函数配合使用可实现字符和整数之间的相互转换
- 理解ASCII码表有助于更好地利用ord()函数
掌握ord()函数是学习Python文本处理和编码知识的重要一步。
本文由YanSa于2025-07-29发表在吾爱品聚,如有疑问,请联系我们。
本文链接:https://521pj.cn/20256739.html
发表评论