python-:字符串列表的内置方法

昨日内容回顾

  • 成员运算

    innot in 不在
    
  • 身份运算

    ==值相等
    is内存地址相等
    '''
    值相等内存地址不一定相等,内存地址相等值一定相等
    '''
    
  • 流程控制

    • 顺序结构

    • 分支结构

      '''
      代码的缩进:
      	在python通过缩进来表示代码的从属关系
      	缩进一般采用四个空格
      	并不是所有的代码都可以缩进
      	同属一个关键字的多行子代码一定要保持相同的缩进量
      ps:遇到冒号 下一行代码必缩进	
      '''
      第一种:
      if 表达式:
          代码1
          代码2
          
      第二种:双分支语句
      if 表达式:
          代码1
          代码2
      else:
          代码3
          代码4
          
      第三种:多分支语句
      if 条件表达式:
          代码1
          代码2
      elif 条件表达式:
      	代码5
          代码6
      else:
          代码3
          代码4
          
          1.组合使用只会走一个关键字的子代码
      	2.条件可以是逻辑运算符连接多个条件
          ps:if嵌套
          
      
    • 循环结构

      while循环
          '''
          while 条件:
              代码1
              代码2
              ···
          条件为True则一直循环,条件为False则跳出循环。
          '''
      	ps:while的嵌套
          while+break:
              break结束本层循环
          while+continue:
              continue结束本次循环,下一步进入下一次循环
          while+else:while没有被break打断的情况下会执行else后面的语句。反之:则不执行else后面的语句
       
      for循环
      '''
      for 变量名 in 可迭代对象(字符串,字典,元组,列表)
      	代码1
      	代码2
      	···
      '''
      1.range()
      	range(10)默认从0开始[0,10)
          range(1,10)(初始位置,最后位置-1)
          range(1,10,2)(初始位置,最后位置-1,步长:每循环一次加的步长)                
         # 注意python2与python3的区别
          range()
          xrange()
                          
      	ps:for的嵌套
          for+break:
              break结束本层循环
          for+continue:
              continue结束本次循环,下一步进入下一次循环
          for+else:while没有被break打断的情况下会执行else后面的语句。反之:则不执行else后面的语句                    
                          
      

      今日内容概要

      • 作业讲解

      • 数据类型的内置方法

        整型与浮点型
        
        字符串
        
        列表
        
        
      • 可变类型和不可变类型

        整型
        1.用途
        # 年龄 生日 整数类型
        2.定义方式
        age = 18 # age = int(18)
        3.类型转换
        #int() 将括号内的数据转成整型
        print(int(123))
        print(int('123'))
        print(int('[1,2,3,4]'))
        print(int('abc'))#报错
        int()括号内的只能是纯数字
        4.进制转换
        # 4.进制转换
        # print(bin(100))# 将十进制的100转成二进制的数
        # print(oct(100))# 将十进制的100转成八进制的数
        # print(hex(100))# 将十进制的100转成十六进制的数
        '''
        0b开头表示二进制数
        0o开头表示八进制数
        0x开头表示十六进制数
        '''
        
        print(int('0b1010101',2))# 将二进制的100转成十进制的数
        print(int('0o12344357',8))# 将八进制的100转成十进制的数
        print(int('0x92ef44',16))# 将十六进制的100转成十进制的数
        
        # 浮点型
        # 身高 体重 薪资···
        height = 183.9
        print(float(183.1))# 
        print(float('183.1'))
        print(float(183))
        print(int(11.11))
        
        

        字符串的内置方法

        # 作用:名字,性别,国籍,地址等描述信息
        
        # 定义:在单引号\双引号\三引号内,由一串字符组成
        name = 'hello world!'
        
        # 优先掌握的操作:
        # 1.按索引取值(正向取+反向取):只能取
        '''索引是从0开始的'''
        # print(name[0])
        # print(name[::-1])
        
        # 2.切片(获取字符串片段)
        # 第一个参数:起始索引,第二个参数:最后索引-1,
        # 第三个参数:步长(正数就是正取,负数就是反取)
        # print(name[1:4])
        # print(name[1:10:2])
        # 默认方向是从左到右,正取
        # print(name[-5:-1])
        # 第三个参数改成负数可以反取
        print(name[-1:-5:-1])
        print(name[::-1])# 反转字符
        
        # 3.len():获取长度
        # print(len(name))# 获取字符串的长度
        # print('json' not in name)
        
        # 4.移除空白strip():移除指定的首尾字符
        res = '  hello world  '.strip()
        res1 = '****hello ****'.strip('*')
        print(res)
        print(res1)
        
        n1 = '$$jasaon$$'
        print(n1.lstrip('$'))# 去除开头的所有指定字符
        print(n1.rstrip('$'))# 去除结尾的所有指定的字符
        
        #  5.切分split()
        res = 'jason|123|read'
        print(res.split('|')) # 1.指定切割的字符不保留
        print(res.split('|',1)) # 2.切割之后的结构是一个列表(重要)
        print(res.rsplit('|')) # 从右往左切割字符
        
        # 6.循环
        for i in 'name':
            print(i) # 一次获取字符串中单个字符
            
        
        # 7.str()
        # name = 'jason' # str('jason')
        # print(type(str(18)))
        # print(type(str(11.11)))
        # print(type(str('world')))
        # print(type(str([1,2,3,4,5])))
        # print(type(str({'name':'jason','age':18})))
        # print(type(str(True)))
        
        # 8.转换大写/小写
        # res = 'My NAmE Is JASon 666'
        # print(res.upper()) # 将所有的英文字母转换成大写
        # print(res.lower()) # 将所有的英文字母转换成小写
        # print(res.capitalize()) # 将首字母转换成大写,其他字母转成小写
        # print(res.isupper()) # False 判断字符串中的字母是否全部是大写
        # print(res.islower()) # False 判断字符串中的字母是否全部是小写
        
        # print(res.title()) # 每个单词的首字母大写,后面字母改成小写
        
        # res = 'jason egon kivin'
        # print(res.startswith('jason'))# True 判断是否以字符jason开头
        # print(res.endswith('jason'))# False 判断是否以字符jason结尾
        
        # 9.format()格式化
        
        # res = 'my name is {} my age is {}'.format('jason','age')
        # print(res)
        # res = 'my name is {0} my age is {1}'.format('jason','18')
        # print(res)
        # res = 'my name is {name} my age is {age}'.format(name='jason',age=18)
        # print(res)
        
        # f-string
        # name = 'egon'
        # age = 18
        # res = f'my name is {name} my age is {age}'
        # print(res)
        
        # 10.count()计数
        # count(需要计数的字符,起始索引,最后索引-1)
        # res = 'aaabbsdssdff'
        # print(res.count('a',1,10))
        
        # 判断是否是纯数字
        # guess_age = input('请输入数字')
        # if guess_age.isdigit():
        #     guess_age = int(guess_age)
        # else:
        #     print('请输入数字')
        #
        # # 判断是否是纯字母,判断非数字和特殊符号
        # res = 'sddas初始'
        # print(res.isalpha())
        
        # replace()替换
        # res = 'my name is egon egon egon'
        # # print(res.replace('egon','jason'))# 全部替换
        # print(res.replace('egon','jason',1))# 替换次数
        
        # 拼接join():拼接字符串:str(只能拼接字符串)
        # res = ['jason','egon','kevin']
        # print('|'.join(res))
        
        
        列表内置方法
        # 中括号包括的元素,元素之间用逗号隔开
        
        # print(type(list(18))) # 不能
        # print(type(list(11.11))) # 不能
        # print(type(list('world')))
        # print(type(list([1,2,3,4,5])))
        # print(type(list({'name':'jason','age':18})))
        # print(type(list(True))) #不能
        '''
        能够执行for循环的,都能被list()转换成列表
        '''
        name = ['jason','egon','tony']
        # 1.索引取值
        # print(name[0])
        # print(name[-1])
        # # 2.切片操作
        # print(name[0:2])
        # print(name[0:2:2])
        # print(name[-1:-3:-1])
        # 3.统计列表中元素的个数
        # print(len(name))
        
        # # 列表元素的CURD
        # name[1] = 'egon快回来'
        # print(name)
        
        # 追加元素,尾部追加
        # name.append('aaaa')
        # print(name)
        # name.append([11,22,33,44])
        # print(name)
        
        # 插入元素insert(索引,插入元素)
        # name.insert(0,'jack')
        # print(name)
        
        # 扩展列表
        # l1 = [11,2,3,4,5,6]
        # name.extend(l1)
        # print(name)
        
        # 通用的删除操作
        # del name[1]
        # print(name) # ['jason','tony']
        # res = name.remove('tony') # 返回None,
        # print(res)
        # res1 = name.pop(1) # 返回该元素,尾部弹出元素(索引)
        # print(res1)
        
        # l1 = [11,22,3,3,44,55]
        # print(l1.count(11)) # 计数:相同元素的次数
        
        # l1.clear() # 清空列表
        # print(l1)
        
        # l2 = [11,33,44,77,88,44]
        # l2.sort() # 排序,默认是升序
        # print(l2)
        # l2.sort(reverse=True) # reverse=True 降序
        # print(l2)
        #
        # l2.reverse() #倒序
        # print(l2)
        
        可变不可变
        """
        可变类型
            值改变 内存地址不变
        不可变类型
            值改变 内存地址一定变
        """
        # 不可变类型
        # a = 1
        # print(id(a))  # 140736875403024
        # a = 2
        # print(id(a))  # 140736875403024
        
        
        # 可变类型
        l1 = [11,22]
        print(id(l1))  # 2133952624128
        l1.append(666)
        print(id(l1))  # 2133952624128
        
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值