Python print()函数高级用法和 len()函数详解:获取字符串长度或字节数

您所在的位置:网站首页 字符串长度函数python Python print()函数高级用法和 len()函数详解:获取字符串长度或字节数

Python print()函数高级用法和 len()函数详解:获取字符串长度或字节数

2024-07-11 10:17| 来源: 网络整理| 查看: 265

Python print()函数高级用法

我们使用 print() 函数时,都只输出了一个变量,但实际上 print() 函数完全可以同时输出多个变量,而且它具有更多丰富的功能。

print() 函数的详细语法格式如下:

print (value,...,sep='',end='\n',file=sys.stdout,flush=False)

从上面的语法格式可以看出,value 参数可以接受任意多个变量或值,因此 print() 函数完全可以输出多个值。例如如下代码:

user_name = 'Charlie' user_age = 8 #同时输出多个变量和字符串 print("读者名:",user_name,"年龄:",user_age)

运行上面代码,可以看到如下输出结果:

读者名: Charlie 年龄: 8

从输出结果来看,使用 print() 函数输出多个变量时,print() 函数默认以空格隔开多个变量,如果读者希望改变默认的分隔符,可通过 sep 参数进行设置。例如输出语句:

#同时输出多个变量和字符串,指定分隔符 print("读者名:" ,user_name,"年龄:",user_age,sep='|')

在默认情况下,print() 函数输出之后总会换行,这是因为 print() 函数的 end 参数的默认值是“\n”,这个“\n”就代表了换行。如果希望 print() 函数输出之后不会换行,则重设 end 参数即可,例如如下代码:

#设置end 参数,指定输出之后不再换行 print(40,'\t',end="") print(5O,'\t',end="") print(60,'\t',end="")

上面三条 print() 语句会执行三次输出,但由于它们都指定了 end="",因此每条 print() 语句的输出都不会换行,依然位于同一行。运行上面代码,可以看到如下输出结果:

40    50    60

file 参数指定 print() 函数的输出目标,file 参数的默认值为 sys.stdout,该默认值代表了系统标准输出,也就是屏幕,因此 print() 函数默认输出到屏幕。实际上,完全可以通过改变该参数让 print() 函数输出到特定文件中,例如如下代码:

f = open("demo.txt","w")#打开文件以便写入 print('沧海月明珠有泪',file=f) print('蓝回日暖玉生烟',file=f) f.close()

上面程序中,open() 函数用于打开 demo.txt 文件,接连 2 个 print 函数会将这 2 段字符串依次写入此文件,最后调用 close() 函数关闭文件,教程后续章节还会详细介绍关于文件操作的内容。

print() 函数的 flush 参数用于控制输出缓存,该参数一般保持为 False 即可,这样可以获得较好的性能。

Python len()函数详解:获取字符串长度或字节数

Python 中,要想知道一个字符串有多少个字符(获得字符串长度),或者一个字符串占用多少个字节,可以使用 len 函数。

len函数的基本语法格式为:

len(string)

其中 string 用于指定要进行长度统计的字符串。

例如,定义一个字符串,内容为“http://c.biancheng.net”,然后用 len() 函数计算该字符串的长度,执行代码如下:

>>> a='http://c.biancheng.net' >>> len(a) 22

在实际开发中,除了常常要获取字符串的长度外,有时还要获取字符串的字节数。

在 Python 中,不同的字符所占的字节数不同,数字、英文字母、小数点、下划线以及空格,各占一个字节,而一个汉字可能占 2~4 个字节,具体占多少个,取决于采用的编码方式。例如,汉字在 GBK/GB2312 编码中占用 2 个字节,而在 UTF-8 编码中一般占用 3 个字节。

以 UTF-8 编码为例,字符串“人生苦短,我用Python”所占用的字节数如图所示。

2-1ZF1140302452.gif

我们可以通过使用 encode() 方法,将字符串进行编码后再获取它的字节数。例如,采用 UTF-8 编码方式,计算“人生苦短,我用Python”的字节数,可以执行如下代码:

>>> str1 = "人生苦短,我用Python" >>> len(str1.encode()) 27

因为汉字加中文标点符号共 7 个,占 21 个字节,而英文字母和英文的标点符号占 6 个字节,一共占用 27 个字节。

同理,如果要获取采用 GBK 编码的字符串的长度,可以执行如下代码:

>>> str1 = "人生苦短,我用Python" >>> len(str1.encode('gbk')) 20


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3