有没有更好的方法在python3中打印变量集?
在PHP中,我使用过这样的东西:
echo "http://$username:$password@$server:$port"
但是在python 3中,它看起来非常难看,而且用所有那些+'s
打字的时间更长 print('http://'+username+':'+password+'@'+server+':'+port)
在python中有类似“$”符号的东西吗?谢谢。
答案 0 :(得分:4)
Python不支持字符串插值,但您可以使用字符串格式化来实现:
'http://{}:{}@{}:{}'.format(username, password, server, port)
或者使用关键字参数(如果您已经在字典中使用了参数,则最好使用):
'http://{username}:{password}@{server}:{port}'.format(
username=username,
password=password,
server=server,
port=port
)
你也可以滥用locals()
一点,但我不建议这样做:
'http://{username}:{password}@{server}:{port}'.format(**locals())