spe*_*ope 127 python concatenation string-concatenation
在python中说你有
s = "string"
i = 0
print s+i
Run Code Online (Sandbox Code Playgroud)
会给你错误,所以你写
print s+str(i)
Run Code Online (Sandbox Code Playgroud)
没有得到错误.
我认为这是处理int和字符串连接的一种笨拙的方式.甚至Java也不需要显式转换为String来进行这种连接.有没有更好的方法来进行这种连接,即没有Python中的显式转换?
小智 165
现代字符串格式:
"{} and {}".format("string", 1)
Run Code Online (Sandbox Code Playgroud)
Bur*_*lid 86
没有字符串格式:
>> print 'Foo',0
Foo 0
Run Code Online (Sandbox Code Playgroud)
Lev*_*von 34
字符串格式化,使用新样式.format()方法(默认为.format()提供):
'{}{}'.format(s, i)
Run Code Online (Sandbox Code Playgroud)
或旧的,但"仍然坚持",%格式化:
'%s%d' %(s, i)
Run Code Online (Sandbox Code Playgroud)
在上面的两个例子中,连接的两个项目之间没有空格.如果需要空间,可以简单地添加到格式字符串中.
这些为如何连接项目,它们之间的空间等提供了很多控制和灵活性.有关格式规范的详细信息,请参阅此内容.
Cai*_*inG 13
Python是在一个有趣的语言,而通常有一个(或两个)"显而易见"的方式来完成特定的任务中,灵活性仍然存在.
s = "string"
i = 0
print (s + repr(i))
Run Code Online (Sandbox Code Playgroud)
上面的代码片段是用Python3语法,但印刷后的括号总是允许(可选),直到第3版使他们强制性的.
希望这可以帮助.
凯特琳
在 Python 3.6 及更高版本中,您可以像这样格式化它:
new_string = f'{s} {i}'
print(new_string)
Run Code Online (Sandbox Code Playgroud)
要不就:
print(f'{s} {i}')
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
353599 次 |
| 最近记录: |