如何在Python中实现类似C#的{0}、{1}式变量调用?
嘿,我来帮你搞定这两个问题~
一、在Python中创建变量的方法
Python里创建变量真的超级简单,完全不需要提前声明类型,直接给变量名赋值就行。如果你想创建对应{0}、{1}这类逻辑的变量,直接这么写:
# 自定义变量名,对应你提到的{0}和{1}逻辑 var0 = "第一个变量的内容" var1 = "第二个变量的内容"
变量名只要符合Python的命名规则(不能以数字开头、不能用Python关键字、尽量见名知意)就行,不一定非得叫var0、var1哦~
二、实现C#风格的{0}/{1}式变量调用(格式化输出)
你熟悉的C#中Console.WriteLine("hello{0}", Hello);这种位置占位符写法,在Python里可以用字符串的format()方法完美匹配,用法逻辑几乎一致:
比如对应你举的C#例子,Python里的写法是:
hello = "World" print("hello{0}".format(hello)) # 输出结果:helloWorld
如果有多个占位符,按顺序传入对应参数就好:
name = "Makaveli" age = 25 print("你好,我是{0},今年{1}岁".format(name, age)) # 输出结果:你好,我是Makaveli,今年25岁
甚至还可以重复调用同一个参数,只要指定对应的位置序号就行:
print("{0} 是 {1} 的上级,{0} 说了算".format("经理", "员工")) # 输出结果:经理 是 员工 的上级,经理 说了算
顺便提一句,Python 3.6及以上版本还有个更便捷的f-string格式化方式,写法是print(f"hello{hello}"),不过它是直接把变量名放进{}里,不是你要的{0}、{1}风格,但日常开发里用得也很多,感兴趣可以试试~
内容的提问来源于stack exchange,提问作者Makaveli
相关产品推荐
相关产品推荐

