zoukankan      html  css  js  c++  java
  • python基础三之字符串

    Python的数据类型

      数字(int),如1,2,3,用于计算。

      字符串(str),如s = 'zxc',储存少量数据,进行操作。

      布尔值(bool),True和False,用于进行判断。

      列表(list),如l = ['zxc', '213', [1, 23, 4], '张新潮'],可以储存大量的数据,用于操作。

      元祖,如(1, 2, 3, 'zxc'),只读,不能进行其他的操作,用于储存一些重要的不能被随意修改的数据。

      字典(dict),如d = {'name': 'zxc', 'age': 24},按对应关系储存数据,方便进行一些关系对应的数据处理。

    数据类型转换

      int 转换为 str,使用str(int)即可将数字转换为字符串。

      str 转换为 int,使用int(str)可将字符串转换为数字,但前提是这个字符串必须全部由数字组成。

      int 转换为 bool

    # int转换为bool   零为False 非零的为True
    print(bool(0))
    print(bool(1))
    print(bool(54))

      bool 转换为 int

    # bool转换为int   True为1  False为0
    print(int(True))
    print(int(False))
    """
    while True:
        pass
    while 1:  # 效率高
        pass
    """

      str 转换为 bool

    # str转换为bool   字符串空为False  非空为True  可用于判断输入的内容是否为空
    print(bool(''))
    print(bool('zxc'))

      bool 转换为 str,将字符True和False转换为了字符串,没有什么意义!

    不同类型数据的操作方法

      int 的bit_length方法,不常用。

    # bit_length 获取数字转换为二进制后的最少位数
    i = 100
    j = 2
    print(bin(i), bin(j))  # bin()将十进制数字转换为二进制
    print(i.bit_length(), j.bit_length())

      str 的索引,根据索引可以任意取出字符串中的某个元素。

    # 字符串的索引   索引从0开始从左往右计数
    s = 'zxcWER134'
    print(s[2])
    # 获取最后两个字符  索引从后往前数从-1开始之后是-2,依次计数
    print(s[-1])
    print(s[-2])

      

      str 的切片,根据“顾头不顾尾”的规则可以取出不同的元素组合。

    # 字符串的切片  规则:顾头不顾尾
    s = 'zxcWER134'
    # 获取zxc
    print(s[0:3])
    # 获取134
    print(s[6:])
    print(s[-3:])
    # 获取全部
    print(s[:])
    print(s[0:])
    
    # 跳步切片 格式:[首:尾:步长]
    s = 'z2xrc'
    print(s[::2])
    # 从后往前  步长为负数
    print(s[::-2])

      str 的多个内置方法

        1,使字符串首字母大写

    # capitalize首字母大写
    s = 'zxc'
    print(s.capitalize())

        2,使字符串居中显示

    # center 字符串居中两边默认用空白填充 格式:(填充单位,填充符号)
    s = 'zxc'
    print(s)
    print(s.center(8))
    print(s.center(20, '-'))

        3,使字符串完成补全排版

    # expandtables 将字符串中的	(Tab键)前面自动填充为8位,8位或8位以上的按8的倍数来填充
    s = 'zxc	good'
    print(s.expandtabs())
    s = '12345678	good'
    print(s.expandtabs())

        4,使字符串大小写翻转

    # swapcase大小写翻转
    s = 'zxcZXCzxc'
    print(s.swapcase())

        5,使字符串中特定的字母大写

    # title 每个被特殊字符和数字隔开的单词的首字母大写
    s = 'zxc is%good2boy'
    print(s.title())

        6,使字符串全部大写或全部小写

    # upper全部大写 lower全部小写
    s = 'zxcZXC'
    print(s.upper())
    print(s.lower())
    
    # 可用于验证码不区分大小写
    v_code = 'zxc4LU'
    you_input = input('输入验证码,不区分大小写:')
    if you_input.upper() == v_code.upper():
        print('验证码输入正确!')
    else:
        print('验证码不正确,重新输入!')

        7,获取字符串,列表,字典的长度

    # len 获取字符串,列表,字典的长度
    s = 'zxcisgood'
    l = ['zxc', 'is', 'good']
    d = {'name': 'zxc', 'age': 24}
    print(len(s))
    print(len(l))
    print(len(d))

        8,判断字符串是否是由某个元素开头或结尾

    # startswith或endswith 判断字符串是否是由某个元素开头或结尾
    s = 'zxcisgood'
    print(s.startswith('zxc'))
    print(s.endswith('good'))

        9,查找一个元素是否在字符串中

    # find 通过元素找到索引,找不到返回-1
    # index 通过元素找到索引,找不到报错
    s = 'zxcisgood'
    print(s.find('zxc'))
    print(s.find('zxf'))
    
    print(s.index('zxc'))
    # print(s.index('zxf'))  # 会报错

        10,删除字符串前后的指定元素

    # strip 删除字符串前后的指定元素,默认删除空格
    s = '   zxc    '
    print(s.strip())
    s = '%zxc&%&'
    print(s.strip('%&'))
    s = '2222zxc111'
    print(s.strip('12'))
    # rstrip 只删除右边的
    print(s.rstrip('12'))
    # lstrip 只删除左边的
    print(s.lstrip('12'))
    # 可以用于避免用户输入账号时不小心加空格引起的错误
    username = 'zxc'
    name = input('输入你的账号:').strip()
    if name == username:
        print('正确!')
    View Code

        11, 判断某个元素在字符串或列表中出现的次数

    # count 用于判断某个元素在字符串或列表中出现的次数
    s = 'zxcisgoodis'
    l = ['zxc', 'is', 'good', 'is']
    print(s.count('is'))
    print(s.count('z'))
    print(l.count('is'))

        12,以一定的规则将字符串转换为列表

    # split 字符串转换为列表 默认以空格为依据来分割
    s = 'zxc is good'
    s1 = 'zxc,is,good'
    print(s.split())
    print(s1.split(','))

        13,format 格式化输出

    # format 格式化输出
    # 按顺序前后对应
    s = '我叫{},今年{},爱好是{},我是{}我为自己代言'.format('zxc', 24, '读书', 'zxc')
    print(s)
    # 只要索引对应即可
    s = '我叫{0},今年{1},爱好是{2},我是{0}我为自己代言'.format('zxc', 24, '读书')
    print(s)
    # 顺序无需对应
    s = '我叫{name},今年{age},爱好是{hobby},我是{name}我为自己代言'
        .format(hobby='读书', age=24, name='zxc')
    print(s)

        14,字符串中的元素替换

    # replace 用新的元素替换字符串里面的某元素  格式:(old,new,替换个数)默认替换全部
    s = 'zxcisgoodzxcisbad'
    print(s.replace('zxc', 'zxf'))
    print(s.replace('zxc', 'zxf', 1))

        15,判断某个字符在或者不在这个字符串,列表,字典里

    # in (not in) 判断某个字符在或者不在这个字符串,列表,字典里
    s = 'zxcisgood'
    l = ['zxc', 'is', 'good']
    d = {'name': 'zxc', 'age': 24}
    if 'zxc' in s:
        print('含有zxc')
    if 'zxc' in l:
        print('含有zxc')
    if 'name' in d:
        print('含有zxc')
    if 'zxf' not in s:
        print('不含有zxf')

        16,遍历字符串,列表,字典里的元素

    # for i in 字符串,列表,字典 遍历其中的元素
    s = 'zxcisgood'
    l = ['zxc', 'is', 'good']
    d = {'name': 'zxc', 'age': 24}
    for i in s:
        print(i)
    for i in l:
        print(i)
    for i in d:
        print(i)

        17,判断字符串是否是以数字组成

    s = '12345'
    s1 = '12d34'
    print(s.isdigit())  # True
    print(s1.isdigit())  # False

        

          

  • 相关阅读:
    平时代码中用不到设计模式?Are you kidding me?
    关于kubernetes我们还有什么可做的?
    R语言︱文本挖掘——词云wordcloud2包
    描述性统计分析-用脚本将统计量函数批量化&分步骤逐一写出
    R语言读写中文编码方式
    R画图中英文字体完美解决方案
    Python 和 R 数据分析/挖掘工具互查
    关于ř与tableau的集成---- k均值聚类
    tableau 连接R语言
    小识Tableau
  • 原文地址:https://www.cnblogs.com/zxc-Weblog/p/8058631.html
Copyright © 2011-2022 走看看