我正在学习为什么在我的终端中打印单引号和代码语法



为什么在我的终端中打印单引号和代码语法

我在我的教程文件中写了这段代码:

var1 = "hello"
print(var1)
print(type(var1))
var2 = """Peter Piper picked a peck of pickled peppers.
A peck of pickled peppers Peter Piper picked.
If Peter Piper picked a peck of pickled peppers?
Where’s the peck of pickled peppers Peter Piper picked?
"""+"""              The""",var1,""" end"""
print(var2)

但是当我在终端中运行代码时显示如下:


hello
<class 'str'>
('Peter Piper picked a peck of pickled peppers.nnA peck of pickled peppers Peter Piper picked.nnIf Peter Piper picked a peck of pickled peppers?nnWhere’s the peck of pickled peppers Peter Piper picked?n              The', 'hello', ' end')

我想让它打印这个:

hello
<class 'str'>
Peter Piper picked a peck of pickled peppers.
A peck of pickled peppers Peter Piper picked.
If Peter Piper picked a peck of pickled peppers?
Where’s the peck of pickled peppers Peter Piper picked?
The hello end

我不知道该怎么修请帮帮我

我有3.8.6 Python解释器

你可以试试这个

var1 = "hello"
print(var1)
print(type(var1))
var2 = f"""Peter Piper picked a peck of pickled peppers.
A peck of pickled peppers Peter Piper picked.
If Peter Piper picked a peck of pickled peppers?
Where’s the peck of pickled peppers Peter Piper picked?
The {var1} end"""
print(var2)

结果:

hello
<class 'str'>
Peter Piper picked a peck of pickled peppers.
A peck of pickled peppers Peter Piper picked.
If Peter Piper picked a peck of pickled peppers?
Where’s the peck of pickled peppers Peter Piper picked?
The hello end

您已将var2定义为tuple而不是str。要亲自查看,请打印var2:print(type(var2))的类型,您会看到它是一个tuple

Python允许以三种方式定义tuple

  1. tuple(sequence)
  2. (a, b, c)
  3. a, b, c

我避免使用第三种语法,因为它很容易在无意中进行编辑。

您需要将var2声明中的,s替换为+s,以便执行级联:

var2 = """Peter Piper picked a peck of pickled peppers.
A peck of pickled peppers Peter Piper picked.
If Peter Piper picked a peck of pickled peppers?
Where’s the peck of pickled peppers Peter Piper picked?
"""+"""              The""" + var1 + """ end"""

使用"操作员,所以只需将最后一行更改为:

"""+"""              The """+var1+""" end"""

使用"意味着您正在创建一个元组。

最新更新