如何让输入光标与提示语同行?Python输入输出函数优化
解决Python打字机式函数的换行与光标问题
修改后的函数实现
import time import sys def printy(text, delay=0.05): # 逐字符输出文本 for char in text: sys.stdout.write(char) sys.stdout.flush() time.sleep(delay) # 输出完成后自动换行 print() def inputy(prompt, delay=0.05): # 逐字符输出提示语,不添加换行 for char in prompt: sys.stdout.write(char) sys.stdout.flush() time.sleep(delay) # 光标留在提示语同行并获取输入 return input()
核心修改说明
- printy函数:在逐字符输出结束后,调用
print()实现自动换行,无需手动添加\n,确保每次调用后的内容自动分隔。 - inputy函数:全程用
sys.stdout.write输出提示语,不插入换行符,直接调用input(),光标会停留在提示语的末尾同行位置,完美匹配需求。
测试代码示例
# 验证printy自动换行效果 printy("欢迎使用打字机输出函数") printy("这是第二行自动换行的内容") # 验证inputy光标同行效果 user_name = inputy("请输入你的昵称:") printy(f"你好,{user_name}!")
内容的提问来源于stack exchange,提问作者IndieMultiCraft
相关产品推荐
相关产品推荐

