延迟文本时输出以 none 结束
Output ends in none when delaying text
我正在尝试制作一款基于文本的冒险游戏。我是 Python 的新手
我正在尝试像旧游戏一样延迟文本。
from time import sleep
import sys
def de(string):
for c in string:
print(c, end='')
sys.stdout.flush()
sleep(0.1)
在整个代码中,执行以下操作:
print(de("\nPlayer health: "), player_health,)
或
user_fighter = input(de("what is the name of your fighter?"))
输出总是以"None"
结尾
例如
Player health: None 100
我该如何解决这个问题?
您的 de
函数不 return 任何东西,因此 return 值为 None
。此外,您在函数中已经有一个 print
可以执行您要执行的操作。因此,您可以直接调用 de
函数,而不是在 print
.
中调用它
代码
from time import sleep
import sys
def de(string):
for c in string:
print(c, end='')
sys.stdout.flush()
sleep(0.1)
# ...
# Code
# ...
de("\nPlayer health: ")
print(player_health)
输出
Player health: 100
"Player health"是一个字母一个字母显示的,后面的值一次显示。
有两个功能怎么样。一个输出文本,另一个输出文本但 returns 用户输入。
from time import sleep
import sys
def de(string, end='\n'):
for c in string:
print(c, end='')
sys.stdout.flush()
sleep(0.1)
print(end,end='')
def de_input(string):
de(string, end='')
return input()
de("Welcome to game")
name = de_input("What is your name?")
de("Welcome %s" % name)
我正在尝试制作一款基于文本的冒险游戏。我是 Python 的新手 我正在尝试像旧游戏一样延迟文本。
from time import sleep
import sys
def de(string):
for c in string:
print(c, end='')
sys.stdout.flush()
sleep(0.1)
在整个代码中,执行以下操作:
print(de("\nPlayer health: "), player_health,)
或
user_fighter = input(de("what is the name of your fighter?"))
输出总是以"None"
结尾例如
Player health: None 100
我该如何解决这个问题?
您的 de
函数不 return 任何东西,因此 return 值为 None
。此外,您在函数中已经有一个 print
可以执行您要执行的操作。因此,您可以直接调用 de
函数,而不是在 print
.
代码
from time import sleep
import sys
def de(string):
for c in string:
print(c, end='')
sys.stdout.flush()
sleep(0.1)
# ...
# Code
# ...
de("\nPlayer health: ")
print(player_health)
输出
Player health: 100
"Player health"是一个字母一个字母显示的,后面的值一次显示。
有两个功能怎么样。一个输出文本,另一个输出文本但 returns 用户输入。
from time import sleep
import sys
def de(string, end='\n'):
for c in string:
print(c, end='')
sys.stdout.flush()
sleep(0.1)
print(end,end='')
def de_input(string):
de(string, end='')
return input()
de("Welcome to game")
name = de_input("What is your name?")
de("Welcome %s" % name)