Python 可爱的大小写


Posted in Python onSeptember 06, 2008

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

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 相关文章推荐
Python os模块学习笔记
Jun 21 Python
python3使用urllib模块制作网络爬虫
Apr 08 Python
python中requests爬去网页内容出现乱码问题解决方法介绍
Oct 25 Python
Python使用一行代码获取上个月是几月
Aug 30 Python
Python中的异常处理try/except/finally/raise用法分析
Feb 28 Python
python自定义时钟类、定时任务类
Feb 22 Python
django 快速启动数据库客户端程序的方法示例
Aug 16 Python
python数据库编程 Mysql实现通讯录
Mar 27 Python
jupyter 中文乱码设置编码格式 避免控制台输出的解决
Apr 20 Python
关于Theano和Tensorflow多GPU使用问题
Jun 19 Python
python时间time模块处理大全
Oct 25 Python
Pytorch实现WGAN用于动漫头像生成
Mar 04 Python
Python 除法小技巧
Sep 06 #Python
Python translator使用实例
Sep 06 #Python
Python 字符串中的字符倒转
Sep 06 #Python
Python  连接字符串(join %)
Sep 06 #Python
Python strip lstrip rstrip使用方法
Sep 06 #Python
Python ljust rjust center输出
Sep 06 #Python
Python isinstance判断对象类型
Sep 06 #Python
You might like
php读取txt文件组成SQL并插入数据库的代码(原创自Zjmainstay)
2012/07/31 PHP
回帖脱衣服的图片实现代码
2014/02/15 PHP
关于php 高并发解决的一点思路
2017/04/16 PHP
php中加密解密DES类的简单使用方法示例
2020/03/26 PHP
JavaScript中清空数组的三种方法分享
2011/04/07 Javascript
bootstrap data与jquery .data
2014/07/07 Javascript
在JavaScript中正确引用bind方法的应用
2015/05/11 Javascript
ECMAScript6中Set/WeakSet详解
2015/06/12 Javascript
基于jQuery和hwSlider实现内容左右滑动切换效果附源码下载(一)
2016/06/22 Javascript
学习JavaScript图片预加载模块
2016/11/07 Javascript
详解webpack 多页面/入口支持&公共组件单独打包
2017/06/29 Javascript
JS对象与JSON互转换、New Function()、 forEach()、DOM事件流等js开发基础小结
2017/08/10 Javascript
laravel5.4+vue+element简单搭建的示例代码
2017/08/29 Javascript
Vue 项目部署到服务器的问题解决方法
2017/12/05 Javascript
微信小程序使用progress组件实现显示进度功能【附源码下载】
2017/12/12 Javascript
微信小程序 Animation实现图片旋转动画示例
2018/08/22 Javascript
vue自定义switch开关组件,实现样式可自行更改
2019/11/01 Javascript
如何基于JS截获动态代码
2019/12/25 Javascript
详解vite+ts快速搭建vue3项目以及介绍相关特性
2021/02/25 Vue.js
python: line=f.readlines()消除line中\n的方法
2018/03/19 Python
分享一下Python数据分析常用的8款工具
2018/04/29 Python
python实现NB-IoT模块远程控制
2018/06/20 Python
浅谈解除装饰器作用(python3新增)
2018/10/15 Python
Python玩转Excel的读写改实例
2019/02/22 Python
谈谈Python中的while循环语句
2019/03/10 Python
pyqt5 实现多窗口跳转的方法
2019/06/19 Python
Python基于类路径字符串获取静态属性
2020/03/12 Python
Python用dilb提取照片上人脸的示例
2020/10/26 Python
Etam俄罗斯:法国女士内衣和家居服网上商店
2019/10/30 全球购物
《诺贝尔》教学反思
2014/02/17 职场文书
《乞巧》教学反思
2014/02/27 职场文书
品酒会策划方案
2014/05/26 职场文书
社区艾滋病宣传活动总结
2015/05/07 职场文书
推广普通话的宣传语
2015/07/13 职场文书
PHP设计模式(观察者模式)
2021/07/07 PHP
python实现会员信息管理系统(List)
2022/03/18 Python