python

关注公众号 jb51net

关闭
首页 > 脚本专栏 > python > Python capitalize()函数

Python capitalize()函数的用法详解

作者:士别三日wyx

在Python中,capitalize()将字符串的第一个字符转换为大写字母,并将所有其他字符(如果有的话)转换为小写,本文就将给大家介绍一下Python capitalize()函数的使用方法,感兴趣的朋友跟着小编一起来看看吧

capitalize() 可以将字符串的「首字母大写」

语法

string.capitalize()

返回值

实例:将字符串的首字母变成大写

str1 = 'hello world'
print(str1.capitalize())

输出:

Hello world

1、返回的是新字符串

因为Python的字符串类型是「不可变」的,所以 capitalize() 不会「修改」原字符串,而是返回一个新字符串,我们打印一下转换前、后的字符串内存地址

str1 = 'hello world'
print(id(str1))
print(id(str1.capitalize()))

输出:

2282908880752
2282908885104

从结果可以发现,转换前、后的字符串「内存地址」不一样,是新创建的一个字符串。

2、转换规则

从函数的描述可以了解到, capitalize() 不只将「首字母」大写,还会把「其余字母」转成小写

内置函数只能看到描述,这里展示一下github上的「源码」

我们可以看到, capitalize() 会将首字母转成大写、后面的字母转换成小写、然后返回。

我们通过一些案例来验证一下:

print('HELLO'.capitalize())
print('hElLo'.capitalize())
print('hell0'.capitalize())

输出:

Hello
Hello
Hell0

从输出结果可以发现,各种「大小写」的组合,转换后都是一样的。

如果「首字母」不是英文字母,则全部转换为小写。

print('1hElLo'.capitalize())
print('@Hello'.capitalize())
print('\nhello'.capitalize())

输出:

1hello
@hello

hello

3、转换列表的元素

遍历列表的「每一个元素」,进行转换

arr1 = ['HELLO', 'WORLD']
for a in range(len(arr1)):
    arr1[a] = arr1[a].capitalize()
print(arr1)

输出:

['Hello', 'World']

4、指定位置转换

capitalize() 默认转换整个字符串,只对字符串中的「指定位置」进行转换,可以使用以下方式

print('ABCDEFGH'[1:5].capitalize())

输出:

Bcde

从输出结果可以发现,指定位置返回了新的字符串并进行了转换。

到此这篇关于Python capitalize()函数的用法详解的文章就介绍到这了,更多相关Python capitalize()函数内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文