You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

中级Python开发者求教:如何在input提示语中引用已定义变量?

解决Python input提示语中引用变量的问题

嘿,这个问题我之前做小项目时也碰到过!Python确实不允许直接在input的字符串里裸写变量,但有几种超便捷的方式能实现你想要的效果,这里给你分享几个常用方案:

  • f-string格式化(Python 3.6+ 首推)
    这是目前最简洁直观的写法,只需要在字符串前加个f,然后把变量用{}包裹起来就行:

    name = str(input("Enter name: "))
    books_read = int(input(f"Number of books {name} read: "))
    

    这种写法可读性拉满,也是Python官方推荐的现代字符串格式化方式。

  • str.format()方法(兼容旧版本Python)
    如果你的代码需要兼容Python 3.6之前的版本,用format()方法就很合适,通过占位符{}来替换变量:

    name = str(input("Enter name: "))
    books_read = int(input("Number of books {} read: ".format(name)))
    

    要是有多个变量,还可以给占位符加索引或名字,比如"{0} read {1} books",灵活性很高。

  • 旧式%格式化(不推荐但仍可用)
    这是Python早期的格式化方式,现在已经逐渐被前两种替代,但偶尔还是能在老代码里看到:

    name = str(input("Enter name: "))
    books_read = int(input("Number of books %s read: " % name))
    

    这里%s是字符串占位符,对应后面的name变量,如果是数字类型可以用%d之类的占位符。

另外提个小建议:Python里推荐用蛇形命名法(比如books_read而不是booksRead),符合PEP8编码规范,不管是自己维护还是团队协作,代码都会更易读哦~

内容的提问来源于stack exchange,提问作者Youraverageprogrammer

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.14 08:46:57