文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

python字符串

2023-01-30 21:55

关注

字符串的操作方法很多,这里只选几种常用的

(1)    字符串大小写转换

1.    S.lower()    字母大写转换成小写

2.    S.upper()    字母小写转换成大写

3.    S.swapcase()    字母大写转换小写,小写转换大写

4.    S.title()    将首字母大写

实例代码如下:

# coding: utf-8
__author__ = 'www.py3study.com'
#字母大写转小写
string_capital = 'WWW.PY3STUDY.COM'
print(string_capital.lower())
#字母小写转大写
string_lowercase = 'www.py3study.com'
print(string_lowercase.upper())
#字母大小写互转
string_Case_rotation = 'Www.Py3study.coM'
print(string_Case_rotation.swapcase())
#将首个字母大写
string_capitalized = 'www.py3study.com'
print(string_capitalized.title())

运行效果如下:

blob.png

(2)    字符串搜索,替换

1.    S.find(substr,[start,[end]])    返回S中出现substr的第一个字母的标号,如果S中没有substr则返回-1,start和end作用就相当于在S[start:end]中搜索

2.    S.count(substr,[start,[end]])    计算substr在S中出现的次数

3.    S.replace(oldstr, newstr, [count])    把S中的oldstr替换为newstr,count为替换次数

4.    S.strip([chars])    把S左右两端chars中有的字符全部去掉,一般用于去除空格

5.    S.lstrip([chars])    把S左端chars中所有的字符全部去掉

6.    S.rstrip([chars])    把S右端chars中所有的字符全部去掉

实例代码如下:

# coding: utf-8
__author__ = 'www.py3study.com'
string = 'www.py3study.com'
strings = ' www.py3study.com '
#返回string中m的第一个字母标记
print(string.find('m',0, len(string)))
#计算string中w出现的次数
print(string.count('w',0,len(string)))
#把string中的com替换为net,1为替换次数
print(string.replace('com','net',1))
#把strings中左右两端的空格去掉,' '指空格
print(strings.strip(' '))
#把string中左端中的www字符去掉
print(string.lstrip('www'))
#把string中右端的com去掉
print(string.rstrip('com'))

运行效果

blob.png

(3)    字符串分割,组合

1.    S.split([sep, [maxsplit]])    以sep为分隔符,把S分成一个list,maxsplit表示分割的次数,默认的分隔符为空白字符

2.    S.join(seq)    把seq代表的序列---字符串序列,用S连接起来

实例代码

# coding: utf-8
__author__ = 'www.py3study.com'
string = 'www.py3study.com'
strs = '.'
seq = ('www','py3study','com')
#以w为分隔符,分割3次,把string分割成一个list
print(string.split('w',3))
#以点为连接符,把seq里面的字符串连接起来
print(strs.join(seq))

运行效果

blob.png

(4)    字符串编码,解码

1.    S.decode([encoding])    将以encoding编码的S解码成unicode编码

2.    S.encode([encoding])    将以unicode编码的S编码成encoding,encoding可以是gb2313,gbk,utf8

代码如下:

# coding: utf-8
__author__ = 'www.py3study.com'
string = '你好!python'
print(string.encode('utf-8'))
print(string.encode('GBK'))
utf8_string = string.encode('utf-8')
gbk_string = string.encode('GBK')
print(type(utf8_string))
print(type(gbk_string))
print(utf8_string.decode('utf-8'))
print(gbk_string.decode('GBK'))

运行结果

blob.png

(5)    字符串测试

1.    S.isalpha()    S是否全是字母,至少有一个字符

2.    S.isdigit()    S是否全是数字,至少有一个字符

3.    S.isspace()    S是否全是空白字符,至少有一个字符

4.    S.islower()    S中的字母是否全是小写

5.    S.isupper()    S中的字母是否全是大写

6.    S.istitle()    S是否是首字母大写的


编写一个showstr.py来实验一下

# coding: utf-8
__author__ = 'www.py3study.com'
def strcase():
    '''字符串转换'''
    print('演示字符串大小写转换')
    print('演示的S值为:WWW.py3study.com')
    S = 'WWW.py3study.com'
    print('大写转小写:tS.lower() = {}'.format(S.lower()))
    print('小写转大写:tS.upper() = {}'.format(S.upper()))
    print('大小写转换:tS.swapcase() = {}'.format(S.swapcase()))
    print('首字母大写:tS.title() = {}'.format(S.title()))
    print('\n')

def strfind():
    '''字符串搜索,替换'''
    print('演示字符串搜索,替换等')
    print('演示的S值为: www.py3study.com ')
    S = ' www.py3study.com '
    print('字符串搜索:tS.find("m") = {}'.format(S.find('m',0,len(S))))
    print('字符串统计:tS.count("w") = {}'.format(S.count('w',0,len(S))))
    print('字符串替换:tS.replace("com","net") = {}'.format(S.replace('com','net')))
    print('字符串去左右空格:tS.strip() = {}'.format(S.strip()))
    print('字符串去左空格加www:tS.lstrip().lstrip("www") = {}'.format(S.lstrip().lstrip('www')))
    print('字符串去右边空格加com:tS.rstrip().rstrip("com") = {}'.format(S.rstrip().rstrip('com')))
    print('\n')

def strsplit():
    '''字符串分割,组合'''
    print('演示字符串分割,组合')
    print('演示的S值为:www.py3study.com')
    S = 'www.py3study.com'
    S_temp = '.'
    print('字符串分割w3次:tS.split() = {}'.format(S.split('w',3)))
    print('字符串组合(1)以.(点)连接:t".".join(["www","study","com"]) = {}'.format('.'.join(['www','study','com'])))
    print('字符串组合(2)以$符连接:t"$".join(["www","study","com"]) = {}'.format('$'.join(['www','study','com'])))
    print('字符串组合(3)以空格链接:t" ".join(["www","study","com"]) = {}'.format(' '.join(['www','study','com'])))
    print('\n')

def strcode():
    '''字符串编码,解码'''
    print("演示字符串编码,解码")
    print("演示字符串S赋值为:'编码解码测试'")
    S = '编码解码测试'
    print('GBK编码的S:t = {}'.format(S))
    print('GBK编码的S转换为GBK编码')
    print('S.encode("GBK") = {}'.format(S.encode('GBK')))
    gbk_string = S.encode('GBK')
    print('GBK解码为汉字')
    print(gbk_string.decode('GBK'))
    print('GBK编码的S转换为UTF8编码')
    print('S.encode("UTF8") = {}'.format(S.encode('utf-8')))
    utf8_string = S.encode('utf-8')
    print('utf8解码为汉字')
    print(utf8_string.decode('utf-8'))
    print('\n')

def strtest():
    '''字符串测试'''
    print('演示字符串S赋值为:"study"')
    S = 'study'
    print('测试是否全是字母S.isalpha() = {}'.format(S.isalpha()))
    print('测试是否全是数字S.isdigit() = {}'.format(S.isdigit()))
    print('测试全是空白字符,至少有一个S.isspace() = {}'.format(S.isspace()))
    print('测试是否全是小写字母S.islower() = {}'.format(S.islower()))
    print('测试是否全是大写字符S.isupper() = {}'.format(S.isupper()))
    print('测试是否首字母大写S.istitle() = {}'.format(S.istitle()))
    print('\n')

if __name__ == '__main__':
    strcase()
    strfind()
    strsplit()
    strcode()
    strtest()

运行结果

"C:Program Files (x86)python3.6python.exe" D:/python3_study/str4.py

演示字符串大小写转换

演示的S值为:WWW.py3study.com

大写转小写:S.lower() = www.py3study.com

小写转大写:S.upper() = WWW.PY3STUDY.COM

大小写转换:S.swapcase() = www.PY3STUDY.COM

首字母大写:S.title() = Www.Py3Study.Com



演示字符串搜索,替换等

演示的S值为: www.py3study.com 

字符串搜索:S.find("m") = 16

字符串统计:S.count("w") = 3

字符串替换:S.replace("com","net") =  www.py3study.net 

字符串去左右空格:S.strip() = www.py3study.com

字符串去左空格加www:S.lstrip().lstrip("www") = .py3study.com 

字符串去右边空格加com:S.rstrip().rstrip("com") =  www.py3study.



演示字符串分割,组合

演示的S值为:www.py3study.com

字符串分割w3次:S.split() = ['', '', '', '.py3study.com']

字符串组合(1)以.(点)连接:".".join(["www","study","com"]) = www.study.com

字符串组合(2)以$符连接:"$".join(["www","study","com"]) = www$study$com

字符串组合(3)以空格链接:" ".join(["www","study","com"]) = www study com



演示字符串编码,解码

演示字符串S赋值为:'编码解码测试'

GBK编码的S: = 编码解码测试

GBK编码的S转换为GBK编码

S.encode("GBK") = b'xb1xe0xc2xebxbdxe2xc2xebxb2xe2xcaxd4'

GBK解码为汉字

编码解码测试

GBK编码的S转换为UTF8编码

S.encode("UTF8") = b'xe7xbcx96xe7xa0x81xe8xa7xa3xe7xa0x81xe6xb5x8bxe8xafx95'

utf8解码为汉字

编码解码测试



演示字符串S赋值为:"study"

测试是否全是字母S.isalpha() = True

测试是否全是数字S.isdigit() = False

测试全是空白字符,至少有一个S.isspace() = False

测试是否全是小写字母S.islower() = True

测试是否全是大写字符S.isupper() = False

测试是否首字母大写S.istitle() = False



阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     807人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     351人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     314人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     433人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     221人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯