Python基础知识-字符串

本文介绍了Python中字符串的isupper()函数,用于检测字符串是否全由大写字母组成,并探讨了ASCII码及其在字符串格式化中的应用,特别是针对英文字符的编码范围。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

‘’’
判断相关的字符串函数:
1. isupper() 检测字符串是否都是大写字母组成(只检测字母,数据中有其它格式数据时不检查其它数据)
a = ‘study hard and make progress everyday’
b=a.isupper()
print(b) # 结果为布尔值

    2.  islower()              检测字符串是否都是小写字母组成(只检测字母,数据中有其它格式数据时不检查其它数据)
        a = 'study hard and make progress everyday'
        b=a.islower()
        print(b)

    3.  istitle()              检测字符串是否符合标题需求 (每个单词的首字母大写)
        a = 'study hard and make progress everyday'
        b=a.istitle()
        print(b)

    4.  isalnum()              检测字符串是否由数字和字母及文字组成(数据中有空格跟符号也不行)
        a = 'study hard and make progress everyday 2019年7月12日'
        b=a.isalnum()
        print(b)

    5.  isalpha()              检测字符串是否由字母及文字组成(数据中有空格跟符号也不行)
        a = 'studyhardandmakeprogresseveryday加油'
        b=a.isalpha()
        print(b)

    6.  isdigit()              检测字符串是否由十进制字符组成(0-9数字)
        a = '0123456789'
        b=a.isdigit()
        print(b)

    7.  isnumeric()            检测字符串是否由数字字符组成
        a = '0123456789'
        b=a.isnumeric()
        print(b)

    8.  isspace()              检测字符串是否由不可见字符组成
        a = '     \n \r \t '
        b=a.isspace()
        print(b)

    9.  startswith()           检测字符串是否以指定的字符串开头
        a = 'study hard and make progress everyday 2019年7月12日'
        b=a.startswith()
        print(b)

    10. endswith()             检测字符串是否以指定的字符串结尾
        a = 'study hard and make progress everyday 2019年7月12日'
        b=a.startswith('study')
        print(b)


与英文相关的函数:
    11. upper()                将字符串中的小写字母转换为大写
        a = 'study hard and make progress everyday'
        b=a.upper('everyday')
        print(b)

    12. lower()                将字符串中的大写字母转换为小写
        a = 'STUDY HARD AND MAKE PROGRESS EVERYDAY'
        b=a.lower()
        print(b)

    13. swapcase()             将字符串中的大写字母转换为小写,小写字母转换为大写
        a = 'study hard and make PROGRESS EVERYDAY'
        b=a.swapcase()
        print(b)

    14. title()                将字符串中的字母进行标题化处理(就是首字母大写)
        a = 'study hard and make progress everyday'
        b=a.title()
        print(b)


    15. capitalize()           将整行字符串中字母的第一个字母变为大写(整组数据只改第一个字母)
        a = 'study hard and make progress everyday'
        b=a.capitalize()
        print(b)


与字符串查找相关的函数:
    16. index()               从字符串左侧开始向右查找指定字符串出现的位置(找不到的时候结果报错)
        a = '人生苦短,我用python搞开发'
        b=a.index('我',2,7)        # 2,7  是指定索引的开始跟结束,可有可无
        print(b)


    17. rindex()              从字符串右侧开始向左查找指定字符串出现的位置(找不到的时候结果报错)
        a = '人生苦短,我用python搞开发,我是IT人'
        b=a.rindex('用',-2,-7)        # -2,-7  是指定索引的开始跟结束,可有可无
        print(b)                      # 如果有重复的字符串,只显示第一个查找到的位置


    18. find()                从字符串左侧开始向右查找指定字符串出现的位置(找不到的时候结果显示-1,不报错)
        a = '人生苦短,我用python搞开发'
        b=a.find('我',2,7)        # 2,7  是指定索引的开始跟结束,可有可无
        print(b)

    19. rfind()              从字符串右侧开始向左查找指定字符串出现的位置 (找不到的时候结果显示-1,不报错)
        a = '人生苦短,我用python搞开发,我是IT人'
        b=a.rfind('用',-2,-7)        # -2,-7  是指定索引的开始跟结束,可有可无
        print(b)                      # 如果有重复的字符串,只显示第一个查找到的位置



字符串操作相关的函数
    20. split()                  字符串切割函数(使用特定的字符串)
        a = '人生@苦短@我用@python@搞开发'
        b=a.split('@',3)       #字符串中找到@符号的位置用后面指定的逗号符号进行切割,3字表示只切割三次
        print(b)


    21. join()                   使用特定字符串将容器数据连接成一个字符串
        a = '人生苦短,我用,python,搞开发'
        b='~-~ '.join(a)       # 使用笑脸符号将数据中的逗号替换连接
        print(b)


    22. zfill()                  zero fill 零填充效果(指定数据长度,不够的部分使用0填充到足够的长度)
        a = '12345'
        b = a.zfill(9)             # 指定长度为9位数
        print(b)                   # 不够九位数前面填4个0


    23. center()                 使用指定字符将字符串填充到指定长度(原有内容居中对齐)
        a = '12345'
        b = a.center(10,@)            # 前面写填充的长度,后面写指定的填充符号(默认填充符号为空格键)
        print(b)


    24. ijust()                  使用指定字符将字符串填充到指定长度(原有内容靠左对齐)
        a = '12345'
        b = a.ijust(8,@)            # 前面写填充的长度,后面写指定的填充符号(默认填充符号为空格键)
        print(b)


    25. rjust()                  使用指定字符将字符串填充到指定长度(原有内容靠右对齐)
        a = '12345'
        b = a.rjust(9,@)            # 前面写填充的长度,后面写指定的填充符号(默认填充符号为空格键)
        print(b)


    26. strip()                  去除字符串左右两侧指定的  连续字符 (不写指定数据的话,默认去掉空格)
        a = '1111114353431111111'
        b = a.strip('1')            # 左右两侧的连续 1 被删除
        print(b)

    27. lstrip()                 去除字符串左侧指定的   连续字符
        a = '1111114353431111111'
        b = a.lstrip('1')
        print(b)

    28. rstrp()                  去除字符串右侧指定的  连续字符
        a = '1111114353431111111'
        b = a.rstrip('1')
        print(b)

    29. replace()                字符串的替换操作
        a = '1111114353431111111'
        b = a.replace(1,2,10)      #前面写需要替换的数据,后面填新的数据,最后是需要替换的次数,不写次数就全部替换)
        print(b)                   #将数据1 替换成 2,10次




    30. format()

字符串格式化操作:

% 格式化操作:
        基本格式: 字符串 % 格式化使用的数据

             %d                要格式化一个整数

             %f                要格式化一个浮点型(默认小数点6位)

             %s                要格式化一个字符串

             %c                要格式化一个ascii码

             %u                要格式化一个无符号整型

             %o                要格式化一个无符号的八进制整型

             %x                要格式化一个无符号的十六进制

             %e                要格式化一个科学计数法的浮点型

             %E                要格式化一个科学计数法的浮点型

             %p                使用十六进制格式化变量地址

        元组格式化操作:
            print('我的老师是:%s ,我的年龄是:%d ,我的身高是:%f  米' %('丛浩',18,1.72))

        精度设定:(只针对于浮点型)
            %.5f        表示精确到小数点后五位

        宽度设定:
            %8s         表示格式化之后的字符是8位不够数填充空格

        对齐方式设定:
            %-8s        设定-为对齐符号,右侧填充,内容靠左。(不设定对齐符号的时候左侧填充内容靠右)

        零填充效果:
            %0长度d     长度为n,需要多少填多少,不够的长度使用0填充而不是默认的空格(不是什么符号都可以,只能使用0)

        正负号显示效果:
            %+d         表示正数显示 + 值,负数显示 - 值。

        上面用到的四个符号:  .  -   +   0    叫做标表。

format 函数格式化操作。

基本格式:
    a1 = '我的爱好是好好学习{}'
    b2 = a1.format('python')
    print(b2)

提升操作:(多个占位符,传多个参数)
    a1 = '我的爱好是好好学习{},{},{}'
    b2 = a1.format('python','努力赚钱','然后天天吃肉')
    print(b2)

传入多个数据:(使用关键字传入)
    a1 = '1{a},2{b},3{c},4{d},5{e}'
    b2 = a1.format(a=9,b=8,c=7,d=6,e=2)
    print(b2)

参数是一个容器的传入方式:(在占位符中进行拆分)
    a1 = 'a{0[0]},b{0[1]},c{0[2]},d{0[3]},e{0[4]}'      # 0表示b2列表,[0][1][2]....表示列表中值的位置
    b2 = [9,8,7,6,5]
    c3 = a1.format(b2)
    print(c3)

限定符号: (使得格式化具有更多功能的符号)
    对齐限定符号:
        1. <         靠左对齐符号
            a1 = '我的汽车是{0:@<10}'     # 把0参数拿过来,总共十个长度字符靠左对齐,不够字符用@填充
            b2 = a1.format('福特锐界')
            print(b2)
        2. >         靠右对齐符号
            a1 = '我的汽车是{0:@>10}'     # 把0参数拿过来,总共十个长度字符靠右对齐,不够字符用@填充
            b2 = a1.format('福特锐界')
            print(b2)
        3.^          居中对齐符号
            a1 = '我的汽车是{0:@^10}'     # 把0参数拿过来,总共十个长度字符居中对齐,不够字符用@填充
            b2 = a1.format('福特锐界')
            print(b2)
    对齐相关格式:   参数位置 : 填充符号  对齐符号   总长度
                       0      :    @        <          10

进制转换限定符号:(必须在冒号的后面使用)
        1. d           十进制
            a1 = '我的福特锐界花了{0:d}万巨款'
            b2 = a1.format(34)
            print(b2)

        2. b           二进制
            a1 = '我的福特锐界花了{0:b}万巨款'
            b2 = a1.format(34)
            print(b2)

        3. o           八进制
            a1 = '我的福特锐界花了{0:o}万巨款'
            b2 = a1.format(34)
            print(b2)

        4. x           十六进制
            a1 = '我的福特锐界花了{0:x}万巨款'
            b2 = a1.format(34)
            print(b2)


精度限定符号:
        1.    .2f      表示小数点后面保留两位
            a1 = '小明一个月的零花钱是{0:.5f}万巨款'  #表示小数点后保留五位
            b2 = a1.format(1.23456789)
            print(b2)


金融数字限定符号:
        1.     ,   逗号符号,表示数字从右向左,每三位数添加一个逗号(只能是整数)
            a1 = '小明家的银行存款有{0:,}巨款'
            b2 = a1.format(123456789)
            print(b2)                     # 结果为:123,456,789

字符集:(多种字符的集合就是字符集)

bytes 不是6大数据类型与字符串类型相似的一种数据类型,与字符相关(计算机的语言代码)
    1.字符串计算机不会识别
    2.将字符串转换为计算机能够识别的数据(bytes类型)

bytes类型和string类型的相互转换:
    1. encode()          将字符串编码转换成bytes类型
        a1 = '小明准备收购中国工商银行'
        b2 = a1.encode()
        print(b2,type(b2))

    2. decode()    将bytes类型解码成字符串类型
        a1 = '小明准备收购中国工商银行'
        b2 = a1.encode()                  #将字符串转为bytes类型
        print(b2,type(b2))                         #打印bytes类型
        c3 = b2.decode()                  #将打印的b2  bytes类型转为字符串
        print(c3,type(c3))

ascii码本质上就是一个字符和数字的对照表(是美国标准信息交换代码)
常用代码:a - z 对应的编码:97 - 122
A - Z 65 - 90
0 - 9 48 - 57
问题:仅满足英文的使用

‘’’

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值