python-3.x - 在python中打印一个序列(unicode)-下标
问题描述
我正在尝试创建一个字符串,例如...
mystring = "X\u2080 + X\u2081 + X\u2082 + X\u2083 + ..."
print(mystring)
哪个应该输出'X₀ + X₁ + X₂ + X₃ + ...'
但是,我想用循环顺序添加它们。
我努力了:
mystring = ""
for i in range(0,4):
mystring += f"X\u208{str(i)} +"
但我得到了错误
(unicode error) 'unicodeescape' codec can't decode bytes in position 1-5
truncated \uXXXX escape
在循环中按顺序添加带有 unicode 的打印项的正确方法是什么?
解决方案
Unicode 转义序列必须完全指定,并且不能与 f 字符串文字中的占位符组合。
要以编程方式生成 unicode 字符,您可以改用该chr
函数:
mystring = ' + '.join(f"X{chr(0x2080 + i)}" for i in range(4))
mystring
变成:
X₀ + X₁ + X₂ + X₃
推荐阅读
- javascript - 如何在 mySQL 的 api 调用中格式化 DATETIME 格式?
- c# - 如何使用 C#、MOQ 和 XUnit 初始化测试数据以模拟上下文?
- android - Codenameone 将 mimetype(PNG) 关联到我的应用程序
- r - 在箱线图中显示均值,并绘制折线图
- python-3.x - GeckoDriver 必须在在线服务器(wayscript.com)的可执行路径中
- date - 在 Power BI 中每天显示关键度量的预期值,不包括周末和公共假期
- php - 数组键的随机数,重复的相同随机数
- node.js - NodeJS - 在服务器创建后设置 http 服务器请求监听器
- java - 如何设置 Java 11 的最大内存使用量?
- reactjs - React 功能组件 - 测试一个元素 instanceOf baseElement