Python 可爱的大小写

时间:2021-05-15 12:34:18 

函数较简单,看下面的例子:


s = 'hEllo pYthon'
print s.upper()
print s.lower()
print s.capitalize()
print s.title()


输出结果:
HELLO PYTHON
hello python
Hello python
Hello Python

判断大小写
Python提供了isupper(),islower(),istitle()方法用来判断字符串的大小写。注意的是:
1. 没有提供 iscapitalize()方法,下面我们会自己实现,至于为什么Python没有为我们实现,就不得而知了。
2. 如果对空字符串使用isupper(),islower(),istitle(),返回的结果都为False。


print 'A'.isupper() #True
print 'A'.islower() #False
print 'Python Is So Good'.istitle() #True
#print 'Dont do that!'.iscapitalize() #错误,不存在iscapitalize()方法



实现iscapitalize
1. 如果我们只是简单比较原字符串与进行了capitallize()转换的字符串的话,如果我们传入的原字符串为空字符串的话,返回结果会为True,这不符合我们上面提到的第2点。
def iscapitalized(s):
return s == s.capitalize( )有人想到返回时加入条件,判断len(s)>0,其实这样是有问题的,因为当我们调用iscapitalize('123')时,返回的是True,不是我们预期的结果。
2. 因此,我们回忆起了之前的translate方法,去判断字符串是否包含任何英文字母。实现如下:


import string
notrans = string.maketrans('', '')
def containsAny(str, strset):
return len(strset) != len(strset.translate(notrans, str))
def iscapitalized(s):
return s == s.capitalize( ) and containsAny(s, string.letters)
#return s == s.capitalize( ) and len(s) > 0 #如果s为数字组成的字符串,这个方法将行不通调用一下试试:
print iscapitalized('123')
print iscapitalized('')
print iscapitalized('Evergreen is zcr1985')


输出结果:
False
False
True

标签:Python,大小写
0
投稿

猜你喜欢

  • Python多线程实现支付模拟请求过程解析

    2023-04-09 17:59:35
  • python将天数转换为日期字符串的方法实例

    2023-06-02 23:19:03
  • Python编程快速上手——strip()函数的正则表达式实现方法分析

    2022-07-24 07:08:59
  • GoJs的文本绘图模板TextBlock使用实例

    2023-08-26 16:01:00
  • Django更新models数据库结构步骤

    2024-01-16 09:05:25
  • 使用Python串口实时显示数据并绘图的例子

    2023-12-26 14:41:46
  • python ansible服务及剧本编写

    2022-11-18 02:51:20
  • jquery判断单选按钮radio是否选中的方法

    2024-04-19 10:18:25
  • Sublime Text v4.0(4143)安装方法

    2023-09-27 12:04:50
  • 一些你可能不熟悉的JS知识点总结

    2024-04-17 09:46:24
  • Vue为何弃用Ajax,选择Axios?ajax与axios的区别?

    2024-04-30 10:38:52
  • Django实现自定义路由转换器

    2021-09-10 05:49:04
  • python实现不同电脑之间视频传输功能

    2021-01-07 00:03:40
  • Python遍历指定文件及文件夹的方法

    2023-04-07 23:10:17
  • python批量修改图片后缀的方法(png到jpg)

    2022-01-19 19:09:24
  • Python实现上传Minio和阿里Oss文件

    2023-10-29 11:04:07
  • Dhtml网页实例教程

    2007-10-09 13:39:00
  • Vue实例中生命周期created和mounted的区别详解

    2024-04-29 13:08:15
  • 基于Python制作B站视频下载小工具

    2023-11-18 11:58:50
  • Python使用Pillow实现图像基本变化

    2021-08-26 03:30:23
  • asp之家 网络编程 m.aspxhome.com