对于在Python中使用字符串格式打印元组感兴趣的读者,本文将会是一篇不错的选择,我们将详细介绍python字符串打印,并为您提供关于python–在pylint中强制字符串格式、Python中的字符
对于在Python中使用字符串格式打印元组感兴趣的读者,本文将会是一篇不错的选择,我们将详细介绍python 字符串打印,并为您提供关于python – 在pylint中强制字符串格式、Python中的字符串格式化方法、python中的字符串格式%s、以 Pythonic 方式使用 f 字符串进行字符串格式化的有用信息。
本文目录一览:- 在Python中使用字符串格式打印元组(python 字符串打印)
- python – 在pylint中强制字符串格式
- Python中的字符串格式化方法
- python中的字符串格式%s
- 以 Pythonic 方式使用 f 字符串进行字符串格式化
在Python中使用字符串格式打印元组(python 字符串打印)
所以,我有这个问题。我得到了元组(1,2,3),应该使用字符串格式进行打印。例如。
tup = (1,2,3)print "this is a tuple %something" % (tup)
这应该打印带有括号的元组表示形式,例如
这是一个元组(1,2,3)
但是我得到了TypeError: not all arguments converted during string formatting
。
我到底该怎么做?Kinda在这里输了,所以如果你们能指出我正确的方向:)
答案1
小编典典>>> thetuple = (1, 2, 3)>>> print "this is a tuple: %s" % (thetuple,)this is a tuple: (1, 2, 3)
以目标元组为唯一项(即(thetuple,)
零件)来制作单例元组是这里的关键。
python – 在pylint中强制字符串格式
在pylint或现有的pylint插件中是否有任何特定的规则来实现这一点?
解决方法
你可以得到它
pip install pylint-quotes
然后用它与pylint,
pylint --load-plugins pylint_quotes <module-or-package>
在.pylintrc文件中,您可以配置要使用的引号:
# Set the linting for string quotes string-quote=single triple-quote=double docstring-quote=double
Python中的字符串格式化方法
三种方法
说明Python三种格式化方法的文章已经很多了,下面列举比较详细的几篇:
- 程序员客栈:Python的3种字符串格式化,做个超全对比!
- 腾讯云:Python字符串三种格式化输出
- CSDN:python字符串格式化深入详解(四种方法)
以上倒不是“茴字的八种写法”,作为python程序员的常用工具,有必要在合适中的场景下,做出最有效率的选择。这里简短总结如下:
简洁对比
%格式化 | format函数 | f-string | |
---|---|---|---|
顺序 | 参数必须严格按给定顺序 | 可以指定数字编号顺序, 或按参数名指定顺序 | 直接字符串编码参数名, 无需顺序对应 |
特征 | 最接近c语言printf风格 | 比%更灵活,可读性更好 | 可读性最佳, 也最灵活 |
版本 | 全版本兼容 | 2.6出现,2.7完善 | 3.6 |
% 格式化
a = ''小明同学''
b = ''你出去''
print(''%s,%s!'' % (a, b))
format函数
a = ''小明同学''
b = ''你出去''
print(''{},{}!''.format(a, b))
f-string
a = ''小明同学''
b = ''你出去''
print(f''{a},{b}!'')
以上三段代码的输出都是:小明同学,你出去!
,是不是明显f-string的可读性最好,代码也最简洁?
选择建议
- 如果项目的python版本大于3.6,那么显然选择f-string
- 如果python版本小于3.6但大于2.6,那么可以选择format函数
- 只有版本低于2.6,或者项目中有大量c代码,为了保持风格一致,才适合选择原始的%格式化风格
python中的字符串格式%s
您是否尝试过使用F弦?这适用于Python> = 3.6
您可以将代码替换为:
f'<testcase classname="performance_tests" name="{parameters_tuple[0]}" time="%s">'
等在这里,您可以获取内部变量和操作的值(就像您的除法一样),然后用它们替换字符串的那一部分。
f'<Type>"{parameters_tuple[1]/1000}"</Type>'
,
您的代码的问题是这样解释的(请注意(...)
):
return ("""...""" % parameters_tuple[0]),parameters_tuple[1]/1000,parameters_tuple[2:]
因此您会收到“格式字符串参数不足”的信息,因为它在需要7时仅尝试使用第一个参数。相反,您可以使用(...)
创建一个包含所有要使用参数的新元组。使用*
打开“ rest”的包装:
return """...""" % (parameters_tuple[0],*parameters_tuple[2:])
但是,在定义/ 1000
时只执行parameters_tuple
似乎要简单得多:
parameters_tuple = (case_name,x_rw[6] / 1000,x_rw[0],x_rw[1],x_rw[2],x_rw[3],x_rw[6])
,
parameters_tuple = (case_name,x_rw[6])
和
f'strings有所帮助。
谢谢大家:)
,您可以尝试添加括号:
return """
<testcase classname="performance_tests" name="%s" time="%s">
<Type>%s</Type>
<Name>%s</Name>
<Request_Count>%s</Request_Count>
<Failure_Count>%s</Failure_Count>
<Min_Response_Time>%s</Min_Response_Time>
</testcase>""" % (parameters_tuple[0],parameteres_tuple[2:])
以 Pythonic 方式使用 f 字符串进行字符串格式化
如何解决以 Pythonic 方式使用 f 字符串进行字符串格式化?
我是 Python 和学习字符串格式的新手。我使用 f-strings 来格式化这个字符串,我使用 %s 来做这个,但我想用 f-strings 来做这个。
query = f''''''
summary {
operation(
input: {
operation_type: accounts,user_id: {user_id},user_secret: {user_secret},code: {user_id}
}
) {
user_accounts,user_account_type
}
}''''''
解决方法
由于 {}
用于对变量名称进行转义,因此您需要将它们加倍以表示实际的花括号:
query = f''''''
summary {{
operation(
input: {{
operation_type: accounts,user_id: {user_id},user_secret: {user_secret},code: {user_id}
}}
) {{
user_accounts,user_account_type
}}
}}''''''
关于在Python中使用字符串格式打印元组和python 字符串打印的问题我们已经讲解完毕,感谢您的阅读,如果还想了解更多关于python – 在pylint中强制字符串格式、Python中的字符串格式化方法、python中的字符串格式%s、以 Pythonic 方式使用 f 字符串进行字符串格式化等相关内容,可以在本站寻找。
本文标签: