美文网首页程序员
零基础小白学习:python之最详细字符串篇

零基础小白学习:python之最详细字符串篇

作者: python阿喵 | 来源:发表于2020-10-14 17:15 被阅读0次

    python中引号引起来的就是字符串

    索引

    索引(下标)通过索引下标可以精确的地位到某个元素

    # 变量名未 titl的字符串

    title = 'python最NB'

    print(title[0])

    # 控制台输出 p

    print(title[1])

    # 控制台输出 y

    print(title[5])

    # 控制台输出 n

    print(title[-1])

    # 控制台输出 B

    复制代码

    切片

    # 切片

    language = 'python, java, javascript, c, c++, c#'

    # 第一个参数是开始的索引下标, 第二个是结束的索引下标,(但是不会取到最后一个索引的元素, xxx[x:y] (y-1))

    # 从索引为0的位置开始,取后面所有元素

    print(language[0:])

    # 控制台输出 python, java, javascript, c, c++, c#

    # 从倒数索引的第一个元素开始,向前面取,取所有元素。

    print(language[:-1])

    # 此时不包含 #元素,

    # 控制台输出 python, java, javascript, c, c++, c

    # 从索引为0个元素开始,取到第6个元素。

    print(language[0:6])

    # 控制台输出 pytho

    # 从索引为8的元素开始,取到第12个元素。

    print(language[8:12])

    # 控制台输出 java

    # 从索引为14的元素开始,取到第24个元素。

    print(language[14:24])

    # 控制台输出 javascript

    # 步长

    # **[起始位置:终止位置:步长] 步长默认为1**

    # 从索引为0的元素开始,取得末尾, 步长为1

    print(language[0::1])

    # 控制台输出 python, java, javascript, c, c++, c#

    # 从索引为0的元素开始,取得末尾, 步长为2

    print(language[0::2])

    # 控制台输出 pto,jv,jvsrp,c +,c

    # 从索引为8的元素开始,到索引为24的元素结束, 步长为 4

    print(language[8:24:4])

    # 控制台输出 j,vr

    # 从索引为24的元素开始,到索引为24的元素结束, 步长为 6

    print(language[24:-1:6])

    # 控制台输出 ,+

    print(language[100:800:50])

    # 切片的时候起始位置和终止位置都超出的时候不会进行报错

    # print(language[100])

    # 索引的时候索引值超出范围的时候会报错

    复制代码

    字符串方法

    如果大家在学习中遇到困难,想找一个python学习交流环境,可以加入我们的python圈,裙号930900780,可领取python学习资料,会节约很多时间,减少很多遇到的难题。

    字符串大小写方法

    # 定义变量名为 message 的字符串

    message = "I'm a string method"

    # 字符串全小写

    print(message.lower())

    # 控制台输出 i'm a string method

    # 字符串全大写

    print(message.upper())

    # 控制台输出 I'M A STRING METHOD

    # 引用场景

    code = input('请输入验证码(ABCD):')

    if code.upper() == 'ABCD':

        print('验证码正确')

    else:

        print('验证码错误!请重试。。。')

    复制代码

    首字母大写

    message = 'python'

    print(message.capitalize())

    # 控制台输出 Python

    复制代码

    每个单词首字母大写

    message = 'Python is the best language in the world'

    print(message.title())

    # # 控制台输出 Python Is The Best Language In The World

    复制代码

    大小写反转

    message = 'Python is the best language in the world'

    print(message.swapcase())

    # 控制台输出 pYTHON IS THE BEST LANGUAGE IN THE WORLD

    复制代码

    以什么开头 startswith()

    # startswith()方法用于检查字符串是否是以指定子字符串开头,如果是则返回True,否则返回False。如果参数 beg 和 end  指定值,则在指定范围内检查

    # startswith()方法语法:

    # str.startswith(str, beg=0,end=len(string));

    # 参数

    # str -- 检测的字符串。

    # strbeg -- 可选参数用于设置字符串检测的起始位置。

    # strend -- 可选参数用于设置字符串检测的结束位置。

    message = 'startswith'

    print(message.startswith('s'))

    # 控制台输出 True

    message = 'startswith'

    print(message.startswith('s', 1, 5))

    # 控制台输出 False

    message = 'startswith'

    print(message.startswith('s', 5, -1))

    # 控制台输出 True

    复制代码

    以什么结尾 endswith()

    # 以什么结尾

    # endswith()方法用于检查字符串是否是以指定子字符串开头,如果是则返回True,否则返回False。如果参数 beg 和 end  指定值,则在指定范围内检查

    # endswith()方法语法:

    # str.endswith(str, beg=0,end=len(string));

    # 参数

    # str -- 检测的字符串。

    # strbeg -- 可选参数用于设置字符串检测的起始位置。

    # strend -- 可选参数用于设置字符串检测的结束位置。

    message = 'endswith'

    print(message.endswith('h'))

    # 控制台输出 True

    print(message.endswith('s'))

    # 控制台输出 False

    复制代码

    统计

    # Python count() 方法用于统计字符串里某个字符出现的次数。可选参数为在字符串搜索的开始与结束位置

    # str.count(sub, start= 0,end=len(string))

    # 参数

    # sub -- 搜索的子字符串

    # start -- 字符串开始搜索的位置。默认为第一个字符,第一个字符索引值为0。

    # end -- 字符串中结束搜索的位置。字符中第一个字符的索引为 0。默认为字符串的最后一个位置。

    message = 'abcabcsdeflsdksdasd'

    # 查询message字符串中 s字符出现了几次

    print(message.count('s'))

    # 控制台输出 4

    # 查询message字符串中 a字符出现了几次

    print(message.count('a'))

    # 控制台输出 3

    复制代码

    # Python strip() 方法用于移除字符串头尾指定的字符(默认为空格)或字符序列。

    #

    # 注意:该方法只能删除开头或是结尾的字符,不能删除中间部分的字符。

    #

    # 语法

    # strip()方法语法:

    #

    # str.strip([chars]);

    # 参数

    # chars -- 移除字符串头尾指定的字符序列。

    message = '**nmb**'

    # 去掉头和尾的 **字符

    print(message.strip('**'))

    # # 控制台输出 nmb

    # 注意删除多个字符时:只要头尾有对应其中的某个字符即删除,不考虑顺序,直到遇到第一个不包含在其中的字符为止。

    message = '123132231213321312==321312213231123132'

    print(message.strip('123'))

    # # 控制台输出 ==

    复制代码

    分割 split()

    # 分割:以空格和换行符以及制表符进行分割 或者任意符合

    # split() 方法语法:

    #

    # str.split(str="", num=string.count(str)).

    # 参数

    # str -- 分隔符,默认为所有的空字符,包括空格、换行(\n)、制表符(\t)等。

    # num -- 分割次数。默认为 -1, 即分隔所有。

    # 返回值

    # 返回分割后的字符串列表。

    message = '*1 *2* 3*4 *5* 6*7'

    # 以 空格' 号分割

    print(message.split())

    # 控制台输出['*1', '*2*', '3*4', '*5*', '6*7']

    # 以 * 号分割

    print(message.split('*'))

    # 控制台输出 ['', '1 ', '2', ' 3', '4 ', '5', ' 6', '7']

    复制代码

    替换 replace()

    # 替换

    # 语法

    # replace()方法语法:

    #

    # str.replace(old, new[, max])

    # 参数

    # old -- 将被替换的子字符串。

    # new -- 新字符串,用于替换old子字符串。

    # max -- 可选字符串, 替换不超过 max 次

    # 返回值

    # 返回字符串中的 old(旧字符串) 替换成 new(新字符串)后生成的新字符串,如果指定第三个参数max,则替换不超过 max 次。

    message = 'java是世界上最好的语言'

    # 将 java 替换为 python

    print(message.replace('java', 'python'))

    # 控制台输出 python是世界上最好的语言

    复制代码

    居中---填充

    # Python center() 返回一个原字符串居中,并使用空格填充至长度 width 的新字符串。默认填充字符为空格。

    #

    # 语法

    # center()方法语法:

    #

    # str.center(width[, fillchar])

    # 参数

    # width -- 字符串的总宽度。

    # fillchar -- 填充字符。

    # 返回值

    # 该方法返回一个原字符串居中,并使用空格填充至长度 width 的新字符串。

    message = 'python'

    print(message.center(30, '*'))

    # 控制台输出 ************python************

    复制代码

    查找

    # Python find() 方法检测字符串中是否包含子字符串 str ,如果指定 beg(开始) 和 end(结束) 范围,则检查是否包含在指定范围内,如果包含子字符串返回开始的索引值,否则返回-1。

    #

    # 语法

    # find()方法语法:

    #

    # str.find(str, beg=0, end=len(string))

    # 参数

    # str -- 指定检索的字符串

    # beg -- 开始索引,默认为0。

    # end -- 结束索引,默认为字符串的长度。

    # 返回值

    # 如果包含子字符串返回开始的索引值,否则返回-1。

    message = 'python'

    print(message.find('n'))

    # 控制台输出 5

    print(message.find('h', 0, 4))

    # 控制台输出 3

    print(message.find('n', 2, 4))

    # 控制台输出 -1

    复制代码

    查询

    # 查询

    # Python index() 方法检测字符串中是否包含子字符串 str ,如果指定 beg(开始) 和 end(结束) 范围,则检查是否包含在指定范围内,(该方法与 python find()方法一样,只不过如果str不在 string中会报一个异常。 现在好像不会了)

    #

    # 语法

    # index()方法语法:

    #

    # str.index(str, beg=0, end=len(string))

    # 参数

    # str -- 指定检索的字符串

    # beg -- 开始索引,默认为0。

    # end -- 结束索引,默认为字符串的长度。

    # 返回值

    # 如果包含子字符串返回开始的索引值,否则抛出异常。

    message = 'python'

    print(message.index('o'))

    # # 控制台输出 4

    print(message.index('n'))

    # # 控制台输出 5

    #

    print(message.index('h', 0, 4))

    # # 控制台输出 3

    # print(message.index('x', 0, 4))

    # # 控制台输出

    # Traceback (most recent call last):

    #  File "C:\Users\Administrator\Desktop\py\py_01_字符串.py", line 280, in <module>

    #    print(message.index('x', 0, 4))

    # ValueError: substring not found

    复制代码

    拼接

    # Python join() 方法用于将序列中的元素以指定的字符连接生成一个新的字符串。

    #

    # 语法

    # join()方法语法:

    #

    # str.join(sequence)

    # 参数

    # sequence -- 要连接的元素序列。

    # 返回值

    # 返回通过指定字符连接序列中元素后生成的新字符串

    message = 'python'

    print('*'.join(message))

    # 控制台输出 p*y*t*h*o*n

    复制代码

    格式化 format()

    # 按照位置顺序进行填充

    name = "python{},{},{}"

    print(name.format(1, 2, 3))

    # 控制台输出 python1,2,3

    # # 按照索引值进行填充

    name = "python{2},{0},{1}"

    print(name.format("a", "b", "c"))

    # 控制台输出 pythonc,a,b

    # # 按照关键字进行填充

    name = "python{a},{b},{c}"

    print(name.format(a=1, c=2, b=3))

    # 控制台输出 python1,3,2

    复制代码

    is 系列

    # num = 'python'

    # 判断是不是字母,数字,中文

    # print(num.isalnum())

    # 控制台输出 true

    # message = 'pppppppp'

    # # 判断是不是字母,中文

    # print(message.isalpha())

    # # 控制台输出 true

    # message = '11111111111d'

    # # 判断字符串是不是全都是阿拉伯数字

    # print(message.isdigit())

    # # # 控制台输出 false

    # message = '11111111111'

    # # 判断字符串是不是全都是阿拉伯数字

    # print(message.isdigit())

    # # # 控制台输出 true

    message = '1233'

    # 判断是否是十进制

    print(message.isdecimal())

    # # # 控制台输出 true

    message = '1233d'

    # 判断是否是十进制

    print(message.isdecimal())

    # # # 控制台输出 false

    复制代码

    这里还有很多未列出的方法,那就只有小伙伴们自己学习和发现了!

    最后多说一句,小编是一名python开发工程师,这里有我自己整理了一套最新的python系统学习教程,包括从基础的python脚本到web开发、爬虫、数据分析、数据可视化、机器学习等。想要这些资料的可以进裙930900780领取。

    本文章素材来源于网络,如有侵权请联系删除。

    相关文章

      网友评论

        本文标题:零基础小白学习:python之最详细字符串篇

        本文链接:https://www.haomeiwen.com/subject/ukpipktx.html