Python capitalize()函数使用详解,Python首字母大写

「作者主页」:士别三日wyx
「作者简介」:CSDN top100、阿里云博客专家、华为云享专家、网络安全领域优质创作者
「推荐专栏」:小白零基础《Python入门到精通》

capitalize

  • 1、返回的是新字符串
  • 2、转换规则
  • 3、转换列表的元素
  • 4、指定位置转换

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

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

文章出处登录后可见!

已经登录?立即刷新

共计人评分,平均

到目前为止还没有投票!成为第一位评论此文章。

(0)
青葱年少的头像青葱年少普通用户
上一篇 2023年7月11日
下一篇 2023年7月11日

相关推荐