常用字符串的格式化

1.%占位符,%s - 字符串,%d或%i - 数字

写在前面: 用%, 必须使占位符的数量和位置与要格式化的内容一一对应.一个萝卜一个坑.

坑: 若想用%单纯表示百分号,需再加一个%

msg = "我叫%s,我喜欢%s,讨厌%s" % ("大壮","游泳","落后")   #()里是具体内容
print(msg)
name = "小黑"
hobbie = "游泳"
dishobby = "落后"
msg = "我叫%s,我喜欢%s,讨厌%s" % (name,hobbie,dishobby)  #()里是变量名,注:变量要先声明才能引用
print(msg)

个人名片的例子

# name = input("请输入姓名: ")
# age = input("请输入年龄: ")
# hobbie = input("请输入爱好: ")
# msg = """--------------------info of %s--------------------
# Name : %s
# Age : %s
# Hobby : %s
# -----------------------end-----------------------""" % (name,name,age,hobbie)

msg = """--------------------info of %s--------------------
Name : %s
Age : %s
Hobby : %s
-----------------------end-----------------------""" % (input("请输入姓名: "),input("请输入姓名: "),input("请输入年龄: "),input("请输入爱好: "))
print(msg)
#可以这么写,但不好看.

2.format

写在前面: 用format 格式化 ,也要一一对应

第一种用法:{}相当于%s
msg = '我叫{}今年{}性别{}'.format('大壮',25,'男')   # 要一一对应
print(msg)
第二种用法:按索引格式化
msg = '我叫{0}今年{1}性别{2}我依然叫{0}'.format('大壮', 25,'男')    # 要一一对应,但最后一个不用写
print(msg)
第三种用法:关键字格式化   #指名道姓去填充
注: .format()的括号里给每对关键字的顺序可以打乱
a = 100
msg = '我叫{name}今年{age}性别{sex}'.format(age=a,sex='男',name='大壮')   # 可乱序
print(msg)

3.f

写在前面:用f ,{}里只能是变量名;一一对应; python3.6版本以上才能使用

name = "小黑"
hobbie = "游泳"
dishobby = "落后"
msg = f"我叫{name},我喜欢{hobbie},讨厌{dishobby}"
print(msg)
#错误示例:
msg = f"我叫{"小黑"},我喜欢{"游泳"},讨厌{"落后"}"   #会报错
print(msg)

个人名片的例子

name = input("请输入姓名: ")
age = input("请输入年龄: ")
hobbie = input("请输入爱好: ")
msg = f"""--------------------info of name--------------------
Name : {name}  #花括号里是变量名
Age : {age}
Hobby : {hobbie}
-----------------------end-----------------------"""
print(msg)
msg = f"""--------------------info of {input("请输入姓名: ")}-------------------
Name : {input("请输入姓名: ")}#大括号里直接是要格式化的内容,此处可如此,是因为input是Python的内置函数
Age : {input("请输入年龄: ")}
Hobby : {input("请输入爱好: ")}
--------------------end-------------------"""
print(msg)

猜你喜欢

转载自www.cnblogs.com/wanshizidiao/p/11020189.html