字符串的格式化形式

本文详细介绍了Python中字符串格式化的三种方法:%符号格式化、字典格式化以及str.format()函数。通过实例展示了如何使用这些方法进行字符串模板的创建与填充,包括位置匹配、字典映射以及灵活的参数指定方式。此外,还提到了f-string的使用,这是一种更现代的字符串格式化方式,可以直接在字符串中嵌入表达式。
摘要由CSDN通过智能技术生成
# 1、%格式化符  % 是内置的对字符串进行格式化的格式化符,格式化字符串时,将字符串档做一个模板,
#模板中包含格式化符,这些格式化符为真是的值预留位置,并说明真实的值具体的格式,然后用一个元祖()
#将多个值换递给模板,每个值对应一个格式化符

print ('hello %s, I am %d year old' % ('Lilei', 6))
# 结果: hello Lilei, I am 6 year old
#'hello %s, I am %d year old'为我们的模板。%s为第一个格式符,表示一个字符串,
# %d为第二个格式符,表示一个整数。(Lilei', 6)的两个元素分别替换%s和%d的真实值。
#在模板和tuple之间,有一个%号分隔,它代表了格式化操作
#整个'hello %s, I am %d year old' % ('Lilei', 6)实际上构成一个字符串表达式。
#我们可以像一个正常的字符串那样,将它赋值给某个变量。比如:
a = 'hello %s an %s'%('li','xu')
print(a)
# 结果:hello li and xu

#  2、字典形式
#第一种方法最直接方便,但是有时候,我们有很多的参数要进行格式化,
#一一对应就有点麻烦了,于是就有了第二种,字典形式的,上面那种是tuple(元祖)形式的。
c = "hello %(name)s , i am %(age)d year old" %{'name':'li' ,'age':5}
print(c)
# 结果:hello li , i am 5 year old

# 3、str.format()函数
# 基本语法是通过 {} 和 : 来代替以前的 % 。
# format 函数可以接受不限个参数,位置可以不按顺序。实例:
a = '{} {}'.format('hello','world')  # 不设定指定位置,按照顺序填充元素
print(a)
# 结果:hello world
a = '{0},{1}'.format('hello','world') # 通过下标指定位置
print(a)
# 结果:hello,world
a = '{0},{1} {0}'.format('hello','world') # 通过下标指定位置
print(a)
# 结果:hello,world hello


print("网站名:{name}, 地址:{url}".format(name= 'python',url = 'www.baidu.com'))
# 结果:网站名:python, 地址:www.baidu.com
# 通过字典设置参数
site = {"name":"python","url":"www.python.com"}
print("网站名: {name}, 地址:{url}".format(**site))
#结果:网站名: python, 地址:www.python.com
# 通过列表索引设置参数
list = ['python','www.qq.com']
print('网站名:{0[1]},地址:{0[0]}'.format(list))  # 0 是必须的参数
#结果:网站名:www.qq.com,地址:python
# 4、字符串f‘string'  在字符串前面增加f
name = 'li'
a = f'hello,{name}'
print(a)
# 结果:hello,li
# f 后可以接任何表达式
a =10
b =5
print(f'five plue ten is {a+b},not {2*(a+b)}')
# 结果:five plue ten is 15,not 30
# 定义函数great 入参name  city
def great(name,city):
    # return返回内容
    return f'hello {name},are you from {city}'
# 传入参数并打印
print(great('LI','BJ'))
# 结果:hello LI,are you from BJ



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值