python基础学习day03str

  1. 基础数据类型总览
    • why:机器无法像人一样分编各种类型
    • int(数字)
    • str(字符串)作用:存储少量信息。 ‘12‘,’我和你‘,’qw’
    • bool值 作用:判断真假 True False
    • list(列表) 作用:存储大量数据,可改变里面的元素。 [12,[1,2,3,a],True,’wo’]
    • tuple(元组)作用:存储大量数据,不可改变里面的元素。 (12,False,‘wo’,[1,2,3])
    • dict(字典)作用:存储大量关联型数据,查询速度快。{‘name’:’山就在这儿‘,‘age’:18}
    • set(集合)
  • int 主要用于计算 +-*/等等

    • int下的方法(在pytharmIDLE编辑器中输入int,鼠标指针放在int上按Ctrl并点击鼠标右键即可查看):共四种

      #bit_lenth方法:输出有效的二进制的长度
      i = 42    #二进制为0010 1010
      print(i.bit_lenth())
      >>>6
      
    • 不同进制之间的转换

    • bool值转换为int:

      True 1

      False 0

      print(int(True))
      >>>1
      print(int(False))
      >>>0
      
    • str转换为int

      print(tpye(int('123')))
      >>>int
      
  • bool值:

    • 布尔值:True /False (1/ 0);True和False在计算机中相当于1和0(True>False);在python中任何对象都可判断其布尔值,除了0、False、None、所有的空的序列于集合(列表,字典,集合)布尔值为False之外其他都为True。可以使用函数bool()进行判别。

    • str、int转换为bool值:

      print(bool('sd'))
      >>>True
      print(bool(1))
      >>>True
      
  • str:

    • 切片:字符串是有顺序的,从左至右,从0开始,下标(索引)为0

      • 对字符串进行索引,切片出来的数据为str类型。

      • 按索引取:str[index]

        按切片取:str[start_index:end_index+1]

        按照切片步长取:str[start_index:end_index+1:步长]

        反向按照切片步长取:str[start_index:end_index-1:步长]

        str = '我爱python'
        
        print(str[1],type(str[1]))
        >>>我 <class 'str'>
        
        print(str[-1])
        >>>n
        
        print(str[2:7])
        >>>pytho  #顾头不顾尾
        
        print(str[2:])
        >>>python
        
        #步长
        print(str[-1:-5:-1])
        >>>noht
        
        print(str[:])
        >>>我爱python
        
        print(str[::-1])
        >>>nohtyp爱我
        
    • str常用操作方法:

      • 不会对原字符串进行任何操作,都是产生一个新的字符串。然后再对其进行操作。
    • 常用方法:upper()、lower()、startwith()、replace()、strip()、split()、join() 、count()、len()

      str = '我爱P Ython'
      
      print(str.upper())
      >>>我爱P YTHON
      
      print(str.lower())
      >>>我爱p ython
      
      print(str.startwith('wo'))
      >>>False
      
      print(str.startwith('爱',1,3))   #切片方法
      >>>True
      
      print(str.replace('我','你',1))   #替换的次数,不写默认替换全部
      >>>你爱p ython
      
      #strip strip用于去除字符串的首尾字符,可传入一个参数,指定要去除的首尾字符。注意的是,
      #传入的是一个字符数组,编译器去除两端所有相应的字符,直到没有匹配的字符  (lstrip用于去除左边 的字符,rstrip用于去除右边的字符)
      

  
print(str.strip())
>>>我爱python

     print(str.strip('on我'))
     >>>爱P Yth
     
     #split()   默认用空格分割,返回一个列表   str向list转换
     print(str.split())
     >>>['我爱P', 'Ython']
     
     print(str.split('t'),1)  #指定分割符进行分割,有n个分割符可分割n+1个元素,可添加分割的次数
     >>>['我爱P Y', 'hon']
     
     print(str.split('我'))
     >>>['', '爱P Ython']
     
     #join()  interable   可将list转换为str,前提是列表中的元素比需为str类型才行
     print('*'.join(str))
     >>>我*爱*P* *Y*t*h*o*n
     
     print(str.count('我'))
     >>>1
     
     print(len(str))  #获取迭代元素的长度,从1开始计算
     >>>9
     ​```
     ```

+   is 系列:

    +   isalnum()、isalpha()、isaldecimal()

        ```python
        str = 'i love you 123'
        
        print(str.isalnum())#判断字符串是否只由字母或数字(两者可混合)组成
        >>>False   #有空格
        
        print(str.isalpha())#判断字符串是否只由字母组成
        >>>False
        
        print(str.isdecimal())#判断字符串是否只由十进制(数字)组成
        >>>False
        ```


+   in系列:

    +   in 、not in

    ```python
    msg = 'i love you'
    
    ptint('i' in msg)
    >>>True
    
    print('you' not in msg)
    >>>False
    ```

interable:可迭代的,可以简单理解为由多个数据组成

  • 格式化输出第二种:

    • format:

      • 第一种用法:

        msg = '我叫{},来自{},我最爱{}'.format('山就在那儿','博客园','python')
        print(msg)
        >>>我叫山就在那儿,来自博客园,我最爱python
        
      • 第二种用法:

        msg = '我叫{0},来自{1}我最爱{2},我也爱在{1}发表文章'.format('山就在那儿','博客园','python')
        print(msg)
        >>>我叫山就在那儿,来自博客园,我最爱python,我也爱在博客园发表文章
        
      • 第三种用法:

        msg = '我叫{name},来自{where},我最爱{what},我也爱在{where}发表文章'.format(name='山就在那儿',where='博客园',what='python')
        print(msg)
        >>>我叫山就在那儿,来自博客园,我最爱python,我也爱在博客园发表文章
        
posted @ 2020-03-13 20:03  虫萧  阅读(172)  评论(0编辑  收藏  举报