组合字符串和数字的打印

要在 Python 中打印字符串和数字,除了这样做之外,还有其他方法吗:

first = 10
second = 20
print "First number is %(first)d and second number is %(second)d" % {"first": first, "second":second}
411037 次浏览

是的,首选的语法是使用 str.format而不使用已废弃的 %操作符。

print "First number is {} and second number is {}".format(first, second)

使用 不带括号的打印函数可以处理旧版本的 Python,但它是 Python 3不再支持,因此必须将参数放在括号内。然而,还有 解决办法,正如这个问题的答案中提到的。自从 Python 2的支持在2020年1月1日结束以来,答案已经被修改为与 Python 3兼容

你可以做以下任何一件事(可能还有其他方法) :

(1)  print("First number is {} and second number is {}".format(first, second))
(1b) print("First number is {first} and number is {second}".format(first=first, second=second))

或者

(2) print('First number is', first, 'second number is', second)

(注意: 与逗号分开后会自动添加空格)

或者

(3) print('First number %d and second number is %d' % (first, second))

或者

(4) print('First number is ' + str(first) + ' second number is' + str(second))
  

如有需要,最好使用 格式() < a href = “ http://docs.python.org/library/stdtypees.html # str.format”rel = “ noReferrer”> format () (1/1b)。

其他的答案解释了如何生成一个像你的例子中那样格式化的字符串,但是如果你所需要做的只是对 print这样的东西你可以简单地写:

first = 10
second = 20
print "First number is", first, "and second number is", second

如果你用的是3.6,试试这个

 k = 250
print(f"User pressed the: {k}")

输出: 用户按下: 250

在 Python 3.6中

a, b=1, 2


print ("Value of variable a is: ", a, "and Value of variable b is :", b)


print(f"Value of a is: {a}")
import random
import string
s=string.digits
def foo(s):
r=random.choice(s)
p='('
p2=')'
str=f'{p}{r}{p2}'
print(str)
foo(s)

晚点再谢我