python - 如何计算将在 Python 中打印的下一个字符串的长度?
问题描述
我正在尝试根据字符串的长度创建延迟。但是延迟必须在字符串打印到控制台之前发生。目标是为冒险游戏添加一点真实感。
这是我想出的当前代码。我知道这是不对的,但这是我使用 Python 的第一周。
import time
def calculate_text_speed(delay):
delay = text.len() / 20
def start_game():
calculate_text_speed(delay)
time.sleep(calculate_text_speed.delay)
print("Test message.")
我应该创建一个带有对话的列表来预先计算字符串吗?这可能会降低代码的可读性,对吧?
解决方案
也许这就是您不声明文本的意思?
def print_with_delay(text):
time.sleep(len(text) / 20)
print(text)
print_with_delay("Some very exciting things are happening....")
原始答案: 您可以创建非常易读的代码,而无需提前生成文本列表。
主要问题是您将错误的东西传递给calculate_text_speed。试试这个。
import time
text = "Some very exciting things are happening...."
#pass text to the calculate_text_speed function
def calculate_text_speed(text):
return len(text) / 20
time.sleep(calculate_text_speed(text))
print(text)
推荐阅读
- java - 两行相同的代码可以放在一个字符串中吗?
- php - 新的 Magento 安装,损坏的管理员 [不是 CSS?]
- python-idle - 如何停止python空闲编辑器?
- objective-c - 是否可以将一个 cocoapod 包含到另一个中?
- c++ - 澄清我对复制初始化和直接初始化的见解
- python - 用户输入列表 python
- visual-studio-2017 - 如何打包 C++/WinRT 可执行文件进行安装?
- javascript - 哪个更好?通过使用 Javascript 执行基本 HTML 或加载 HTML 元素?
- c++ - LRESULT 函数之前的 HWND 的 GetDC()
- c++ - c++模板函数指针