How can I increment a char?(我怎样才能增加一个字符?)
问题描述
我是 Python 的新手,来自 Java 和 C.如何增加 char?在 Java 或 C 中,chars 和 int 实际上是可以互换的,并且在某些循环中,能够对 chars 进行增量以及按 chars 索引数组对我非常有用.
I'm new to Python, coming from Java and C. How can I increment a char? In Java or C, chars and ints are practically interchangeable, and in certain loops, it's very useful to me to be able to do increment chars, and index arrays by chars.
如何在 Python 中做到这一点?没有传统的 for(;;) 循环器已经够糟糕了 - 有什么方法可以实现我想要实现的目标,而无需重新考虑我的整个策略?
How can I do this in Python? It's bad enough not having a traditional for(;;) looper - is there any way I can achieve what I want to achieve without having to rethink my entire strategy?
推荐答案
在 Python 2.x 中,只需使用 ord
和 chr
函数:
In Python 2.x, just use the ord
and chr
functions:
>>> ord('c')
99
>>> ord('c') + 1
100
>>> chr(ord('c') + 1)
'd'
>>>
Python 3.x 使这更加有条理和有趣,因为它在字节和 unicode 之间有明显的区别.默认情况下,字符串"是 unicode,因此上述方法有效(ord
接收 Unicode 字符,chr
生成它们).
Python 3.x makes this more organized and interesting, due to its clear distinction between bytes and unicode. By default, a "string" is unicode, so the above works (ord
receives Unicode chars and chr
produces them).
但是如果你对字节感兴趣(比如处理一些二进制数据流),事情就更简单了:
But if you're interested in bytes (such as for processing some binary data stream), things are even simpler:
>>> bstr = bytes('abc', 'utf-8')
>>> bstr
b'abc'
>>> bstr[0]
97
>>> bytes([97, 98, 99])
b'abc'
>>> bytes([bstr[0] + 1, 98, 99])
b'bbc'
这篇关于我怎样才能增加一个字符?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:我怎样才能增加一个字符?
基础教程推荐
- 用于分类数据的跳跃记号标签 2022-01-01
- Dask.array.套用_沿_轴:由于额外的元素([1]),使用dask.array的每一行作为另一个函数的输入失败 2022-01-01
- 在 Python 中,如果我在一个“with"中返回.块,文件还会关闭吗? 2022-01-01
- 如何让 python 脚本监听来自另一个脚本的输入 2022-01-01
- 使用PyInstaller后在Windows中打开可执行文件时出错 2022-01-01
- Python kivy 入口点 inflateRest2 无法定位 libpng16-16.dll 2022-01-01
- 筛选NumPy数组 2022-01-01
- 如何在海运重新绘制中自定义标题和y标签 2022-01-01
- 何时使用 os.name、sys.platform 或 platform.system? 2022-01-01
- 线程时出现 msgbox 错误,GUI 块 2022-01-01