python:实现字符串大小写形式转换

一:将字符串转换成小写形式

方法一:运用字符的 ASCII 码值,26个英文字母在 ASCII 中分别对应一个值,大写的A~Z对应 ASCII 值65~90,小写的a~z是97~122,而且它们都是连续的,同一个字母大小写值相差 32,所以如果某个字母在65~90区间,那么将其加 32 就是对应的小写字母。这里,ASCII码值与字母之间的互相转换需要用到两个函数 ord 和 chr;ord函数将字母转换成ASCII码值,chr函数将ASCII码值转换成字母

python:实现字符串大小写形式转换_第1张图片

def to_lower=(text):
    low_text = ""
    for c in text:
        if 65 <= ord(c) <= 90:
            c = chr(ord(c) + 32)
        low_text += c
    return low_text

python:实现字符串大小写形式转换_第2张图片

方法二:26个字母大小写都是一一对应的,每个大写字母都对应一个小写字母,我们可以遍历每个字符判断它是不是大写字符,是的话,返回对应的小写字母就可以了。

def to_lower(text):
    upper = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'
    lower = 'abcdefghijklmnopqrstuvwxyz'
    d = dict(zip(upper, lower))
    # d.get(i,i)就是从字典中获取i对应的value,如果i不在字典中就返回i自己
    return "".join([d.get(i, i) for i in text])

python:实现字符串大小写形式转换_第3张图片

方法三: 运用Python 里面的API,直接使用 str.lower() 方法就可以实现

text='PYTHON'
text.lower()

二:将字符串转换成大写形式

方法基本上和转换成小写形式大同小异

方法一:运用字符的 ASCII 码值

def to_upper(text):
	upper_text=''
	for c in text:
		if 97<=ord(c)<=122:
			c=chr(ord(c)-32)
		upper_text+=c
	return upper_text

python:实现字符串大小写形式转换_第4张图片

方法二:26个字母大小写都是一一对应的,每个小写字母都对应一个大写字母,我们可以遍历每个字符判断它是不是小写字符,是的话,返回对应的大写字母就可以了。

def to_upper(text):
	upper='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
	lower='abcdefghijklmnopqrstuvwxyz'
	d=dict(zip(lower,upper))
        # d.get(i,i)就是从字典中获取i对应的value,如果i不在字典中就返回i自己
	return ''.join([d.get(i,i) for i in text])

python:实现字符串大小写形式转换_第5张图片

方法三:运用Python 里面的API,直接使用 str.upper() 方法就可以实现

text='python'
text.upper()

你可能感兴趣的:(python)