Python 字符串格式化高级用法

文章介绍了Python中三种主要的字符串格式化方法:使用%符号的传统格式化,.format方法,以及Python3.6引入的f-string。每种方法都有其特点,如%适合简单的格式化,.format更灵活,f-string则提供了更简洁和动态的字符串构建方式。此外,文章还展示了如何处理不同数据类型,包括整数、浮点数和科学计数法,并提到了日期时间的格式化。
摘要由CSDN通过智能技术生成

字符串格式化: 是在编程过程中,允许编码人员通过特殊的占位符,将相关对应的信息整合或提取的规则字符串。

python字符串格式化字符串的格式化常用的三种方式,分别是使用 %格式化,format方法格式化,fstring格式化。

传统的方式使用 % 作为占位符,输出自身想输出的内容

常用的格式化字符包括 % s :作为替代字符串内容 ,%d 作为替代十进制(常见的1,2,3而已),%f 作为代替浮点数的用法

比较困难难于理解的 % e 作为代替科学计数法内容

举例:

str_format = 'this %s %d a pice code'
#插入的字符必须要和占位符的顺序保持一致
string = str_format %('a',1)
print(string)
其中 %被称为字符串格式化,其中%后面的“x”被称为格式化符,格式化符有很多个 包括(s,r,c,d,f,...)%s可以被称为占位符 

 打印结果:

# 出现这种操作的原因,是为了让表达内容更加灵活,常用在循环中,或者爬虫中
for i in range(100):
    url = f'https://www.gushici.net/t/1/42/index_%d.html'%(i)
    print(url)

 

第二种方式: .format

format 可以接受python任何数据的内容,不必再去区分需要填补的数据是什么类型

Python 中的它可以使用多种方式来替换字符串中的自定义标记。 例如,要把一个字符串中的占位符替换成实际的值,可以使用 format () 方法

使用方法包括:b.format(a)和format(a,b)。

string = 'Learn {name} well and   {figure} travel around the world'.format(figure = 1,name='python')
print(string)

打印结果:

最常用的方式还是通过位置匹配参数:

# 通过format方法补全字符串 Learn python well and go global
string = 'Learn {0} well {2} go {1}'.format('python','global','and')
print(string)

 3 f-string

f-string,亦称为格式化字符串常量(formatted string literals),是Python3.6新引入的一种字符串格式化方法。f-string让字符串的格式化更加简便,本质上f-string不是字符串常量,而是一个可以在运行时运算求值的表达式。

 f -string 基本用法:

name = '马致远'
string = "hello my name is {name}"
print(string)

 f-string 高级用法 : 表达式求值与函数调用

str = f"THEY hAVe {2+5*2} apples".lower()
print(str)

 此段代码通过使用 f-string 方法 计算了大括号内 2+5*2 的值(求职),将字符串模板中的文本内容是大写的部分转换成了小写(函数调用)

a = 3.1415926
#表示字符串模板的固定的长度
str = f"{a:10}"
print(str)
#表示字符串固定模板的长度,以及小数点后面的精度
# width:precison  整数width 为指定宽度,整数precision 表示显示小数点后几位
# str_test = f"{a:width.precision}"
str2 = f"{a:8.3f}"
print(str2)

 在一段代码中 format 变量接受的内容就是字符串模板

information = {"name":"马远远","age":19 ,"Email":"2320761292@qq.com","income":" xianYang"}
format_ = "woshi {nanshen}".format(nanshen = information["name"])
Student = "work location:{0[student]}"

日期格式化:

from datetime import  *
a = datetime.today()
str =  f"{a:%m-%d-%Y}"
print(a)
print(str)

其中 today 是datime 模块中的一个方法用于获取当前时间

Y 表示 年份 m表示 月份  d 表示日,发现了没有我可以将它的输出顺序进行转换

格式化符: 传统就是 % 现在就是 { }

字符串模板: 需求变动的字符串

需要传递的参数: information 中的内容

字符串格式化 ,把字符串当成一个模板,通过传入的参数进行格式化,并且使用大括号‘{}’作为特殊字符代替‘%’。

### 回答1: Python字符串格式化是一种方便的方式来创建新的字符串,通过在字符串插入变量、值或表达式,从而简化字符串的拼接过程。在Python,有多个字符串格式化的方法,其最常见的是通过占位符{}和format()函数来实现。这种方法特别适用于需要动态生成字符串的场合,例如输出日志、构建邮件内容、生成HTML、XML等。 在Python字符串格式化的语法非常简单,只需要在字符串的占位符{}添加要插入的变量、值或表达式即可。例如,"{0}今年{1}岁了。".format("张三", 18)将输出"张三今年18岁了。"。这种方法可以接收任意数量的参数,并且可以使用命名参数、默认值等更高级的特性。 除了format()函数,Python还支持其他字符串格式化的方式,例如%运算符、f-strings等。每种方式都有其特定的优势和应用场景,因此建议根据需求选择合适的格式化方式。 总之,Python字符串格式化是一项重要的编程技能,可以大幅减少字符串拼接的代码量,同时提高代码的可读性和可维护性。对于Python新手来说,建议多练习使用不同的字符串格式化方式,以便熟练掌握并灵活应用。 ### 回答2: Python字符串格式化是指使用一定的格式来控制输出字符串的方式。这种方式可以用在打印输出、日志记录、web应用程序等场景。 在Python字符串格式化的方式有多种,比如使用字符串格式化操作符(%)、使用字符串模板、使用格式化字符串字面值(f-string)等。 其,使用字符串格式化操作符是最常见的方式。这种方式用%操作符指示一个或多个插值字段,然后指定将要被插入的值。这些被插入的值可以是字面值、变量、表达式等。下面是一些例子: (1)使用字面值插入 name = "John" age = 25 print("My name is %s and I'm %d years old." % (name, age)) 注:其%s表示一个字符串类型的插值字段,%d表示一个整型的插值字段。 (2)使用变量插入 name = "John" age = 25 sentence = "My name is %s and I'm %d years old." print(sentence % (name, age)) 注:这种方式可以让你更容易创造自己的格式化串。 (3)对齐和填充 x = 12 print("|%3d|" % x) #右对齐 print("|%-3d|" % x) #左对齐 print("|%03d|" % x) #使用0填充 注:其第一个%3d表示一个3位的数值插值,如果实际用的不到3位,那么就在前面填充空格;第二个%-3d表示一个左对齐的3位数值插值;第三个%03d表示一个3位宽的插值,如果实际用的不到3位,就在前面填充0。 总而言之,Python字符串格式化是一个灵活多变的方式来显示数据的值。上面仅是一些基础的例子,还有更多的方式和技巧可以被用来达到你的目的。如果你想要掌握它,需要多写代码多实践。 ### 回答3: Python是一门强大的编程语言,在它的标准库就包含了字符串格式化的方法。字符串格式化是指将变量的值插入到字符串,以创建一个新的字符串。这种方法可以用于生成格式化输出,如日志记录,错误消息等。Python字符串格式化有多种方法,其最常用的是使用百分号(%)和格式化字符串(f-string)。 百分号(%)方法: 百分号(%)方法是Python最古老的字符串格式化方法。它使用百分号来表示要插入变量的位置,并指定变量类型和格式。 它的基本语法如下: ``` string % values ``` 其string为待格式化字符串,values为要插入的变量。 % 方法需要使用与变量类型相对应的占位符。以下是常用的占位符: - %s:字符串 - %d:有符号十进制整数 - %f:十进制浮点数 例如,假设我们要将变量x和y的值插入到字符串,并将结果输出到控制台: ``` x = 10 y = 20 print("x 的值为:%d,y 的值为:%d" % (x, y)) ``` 输出结果为: ``` x 的值为:10,y 的值为:20 ``` 格式化字符串(f-string)方法: f-string是Python 3.6 引入的新特性,可以让字符串插值更加方便易懂。它的基本语法为在字符串前面加上f,在大括号引用变量。以下是一个简单的例子: ``` x = 10 y = 20 print(f"x 的值为:{x},y 的值为:{y}") ``` 输出结果为: ``` x 的值为:10,y 的值为:20 ``` f-string也可以使用格式化标志来指定输出格式。例如,如果要限制输出浮点数的小数位数,可以这样写: ``` x = 10.12345 y = 20.6789 print(f"x 的值为:{x:.2f},y 的值为:{y:.2f}") ``` 输出结果为: ``` x 的值为:10.12,y 的值为:20.68 ``` 总的来说,Python字符串格式化非常灵活和易用,能够满足各种类型的字符串格式化需求,提高代码的可读性和代码的效率。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值