首页 > 解决方案 > Python - 如何使新文本在变量后出现在多行中?

问题描述

name = input("what is your name? ")
age = int(input("what is your age? "))
year = str((2021 - age) + 100)

print(name , ", you'll be 100 in" , year , " !")

number = int(input("type in a number: "))
text = print('\n', name , ", you'll be 100 years old in" , year , " !")
x = 1

if x <= number:
   print(text)
if x <= number:
    x = x + 1
if x == number:

输出应该是:

数字 = 3

输出

文本

文本

文本

在尝试了 while 循环和 if 语句后,我得到:

数字 = 3

输出

文本

[没有任何]

[没有任何]

标签: pythonstringvariablesmultiplication

解决方案


此行导致问题:

text = print('\n', name , ", you'll be 100 years old in" , year , " !")

print() 语句的返回为 None,因此在该行中 text = None。这意味着,当您打印文本时,您正在打印无。

你可以像这样重写它:

text = f"\n{name}, you'll be 100 years old in {year}!"
print(text)

推荐阅读