Cannot Figure out how String Substitution works in Python 3.x(无法弄清楚字符串替换在 Python 3.x 中是如何工作的)
问题描述
在 python 2.x 中,你可以这样做:
In python 2.x you were allowed to do something like this:
>>> print '%.2f' % 315.15321531321
315.15
但是,我无法让它在 python 3.x 上工作,我尝试了不同的方法,例如
However, i cannot get it to work for python 3.x, I tried different things, such as
>>> print ('%.2f') % 315.15321531321
%.2f
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: unsupported operand type(s) for %: 'NoneType' and 'float'
>>> print ("my number %") % 315.15321531321
my number %
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: unsupported operand type(s) for %: 'NoneType' and 'float'
然后,我阅读了 .format() 方法,但我也无法让它工作
Then, I read about the .format() method, but I cannot get it to work either
>>> "my number {.2f}".format(315.15321531321)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
AttributeError: 'float' object has no attribute '2f'
>>> print ("my number {}").format(315.15321531321)
my number {}
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
AttributeError: 'NoneType' object has no attribute 'format'
我很乐意收到任何提示和建议!
I would be happy about any tips and suggestions!
推荐答案
尝试发送带有格式的整个字符串进行打印.
Try sending the entire string with formatting to print.
print ('%.2f' % 6.42340)
适用于 Python 3.2
Works with Python 3.2
此外,该格式通过为所提供的 agruments 提供索引来工作
In addition, the format works by providing an index to the provided agruments
print( "hello{0:.3f}".format( 3.43234 ))
注意格式标志前面的0".
Notice the '0' in front of the format flags.
这篇关于无法弄清楚字符串替换在 Python 3.x 中是如何工作的的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:无法弄清楚字符串替换在 Python 3.x 中是如何工作的
基础教程推荐
- 用于分类数据的跳跃记号标签 2022-01-01
- 何时使用 os.name、sys.platform 或 platform.system? 2022-01-01
- 筛选NumPy数组 2022-01-01
- Python kivy 入口点 inflateRest2 无法定位 libpng16-16.dll 2022-01-01
- 线程时出现 msgbox 错误,GUI 块 2022-01-01
- 如何让 python 脚本监听来自另一个脚本的输入 2022-01-01
- 使用PyInstaller后在Windows中打开可执行文件时出错 2022-01-01
- 如何在海运重新绘制中自定义标题和y标签 2022-01-01
- Dask.array.套用_沿_轴:由于额外的元素([1]),使用dask.array的每一行作为另一个函数的输入失败 2022-01-01
- 在 Python 中,如果我在一个“with"中返回.块,文件还会关闭吗? 2022-01-01