每天一个Python知识点:只用一招就将所有的英文单词首字母变成大写

开发 后端
将英文单词首字母变成大写是非常常用的文本操作,使用capitalize方法可以将一个英文单词的首字母变成大写。

[[381666]]

将英文单词首字母变成大写是非常常用的文本操作,使用capitalize方法可以将一个英文单词的首字母变成大写。但如何将一段文本中所有英文单词的首字母都变成大写呢?最容易想到的方法是将这些英文单词拆成独立的单词,然后分别使用capitalize方法将这些英文单词的首字母变成大写,然后再将这些单词连接起来,实现代码如下:

  1. s = 'The weather is really nice today, very suitable for an outing.' 
  2.  
  3. arr = s.split() 
  4. for i in range(0, len(arr)): 
  5.     arr[i] = arr[i].capitalize() 
  6. s1 = " ".join(arr) 
  7. print(s1) 

运行代码看看效果:

从这段代码可以看出,使用了3个方法:split、capitalize和join。分别用来拆分字符串;将英文单词首字母转换为大写;使用特定的分隔符(本例是空格)合并列表中的字符串。

不过这段代码好麻烦,有没有更简单的方式呢?当然有,铛铛铛!刚出锅的代码来了:

  1. s = 'The weather is really nice today, very suitable for an outing.' 
  2. print(" ".join([word.capitalize() for word in s.split()]))  # 只用了一行代码 

够酷吧,这里只用了一行代码。其实这行代码与前面的实现方法没有本质的区别,只是用了Python中通过for in语句生成列表的方式,将多行代码简化成了一行代码,Python简直太神奇了。其实啊,如果要熟悉Python API,连一行代码都不用写,一个方法就解决了,这就是string.capwords方法,该方法属于string模块,所以需要先导入string模块,代码如下:

  1. import string 
  2. s = 'The weather is really nice today, very suitable for an outing.' 
  3. print(string.capwords(s))   #将字符串中所有单词首字母大写 

看看简单不,别忙,还没完呢!capwords方法的默认分隔符是空格,如果这些英文单词用其他符号分隔,就需要使用capwords方法的第2个参数了,看下面的例子:

  1. import string 
  2. s = 'The,weather,is,really,nice,today,very,suitable,for,an,outing.' 
  3. print(string.capwords(s, ','))   # 用逗号分隔的英文单词 

这段代码使用capwords方法将由逗号(,)分隔的所有英文单词的首字母转换为大写字母。运行结果如下:

  1. The,Weather,Is,Really,Nice,Today,Very,Suitable,For,An,Outing. 

本文转载自微信公众号「极客起源」,可以通过以下二维码关注。转载本文请联系极客起源公众号。

 

责任编辑:武晓燕 来源: 极客起源
相关推荐

2020-12-17 12:27:52

Git文件名React

2015-09-01 10:42:15

编程规范完全指南

2024-03-22 15:13:28

2015-10-14 10:45:04

linux命令less

2022-01-12 14:24:37

接口Callable程序

2015-10-22 09:26:20

linux命令whereis命令

2010-10-14 16:45:54

MySQL查询

2022-10-29 08:55:19

页面react

2013-07-30 11:24:33

SAP“简化IT 一招

2013-03-27 15:23:51

Android开发demo下载学习

2021-11-22 11:30:37

JavaScript代码浏览器

2024-03-20 13:11:45

DockerLinux

2010-10-25 10:20:33

ORACLE函数

2020-10-22 12:30:33

MySQL

2020-06-18 10:05:11

Windows 10Windows微软

2021-12-13 07:28:33

Java性能字符

2020-09-30 07:54:33

提取文档所有图片

2022-06-21 09:27:01

PythonFlaskREST API

2021-03-06 09:54:22

PythonHTTP请求头

2023-07-17 09:19:20

CSSCSS 渐变
点赞
收藏

51CTO技术栈公众号