python 基础笔记二

Python 变量类型

  变量存储在内存中,这意味着在创建变量时会在内存中开辟一个空间,用于存放变量的标识、名称、数据。

  变量的赋值:

  1.python变量赋值不需要类型声明;

  2.每个变量在使用前必须赋值,变量赋值以后该变量才会被创建;

  3.如果变量在脚本中多次被赋值(类型不同),以最后一次赋值的数据类型为准

  4.用 = 来给变量赋值;

  5.多个变量可以同时赋值,如下所示:

   5.1)、a=b=c=1

   5.2)、a,b,c=1,2,'abc'

标准数据类型

  python中五个标准的数据类型:

    Numbers(数字)

    String(字符串)

    List(列表)

    Tuple(元组)

    Dictionary(字典)

数字型

  Python支持四种不同的数字类型:

   int(有符号整型)

   long(长整型【使用小写l 或大写L来表示,eg:0122L】,也可以代表八进制和十六进制)

   float(浮点型)

   complex(复数)

字符串

  1、Python的字串列表有2种取值顺序:

    1.1.从左到右索引默认0开始,最大范围是字符串长度-1;

    1.2.从右到左索引默认-1开始,最大范围是字符串开头;

    

   2、字符串的切片操作:使用[头下标:尾下标] 来截取相应的字符串,其中下标是从0开始算起,可以是正数或负数,下标可以为空表示取到头或尾。

    注意:1.获取的子字符串包含头下标的字符,但是不包含尾下标的字符。

       2.[头下标:尾下标:步长]表示从头下标开始,到尾下标的前一个字符结束,每隔步长-1取一个字符

         

  3、加号+是字符串连接运算符,星号* 是重复操作

     

  4、字符串运算符

    下表实例变量 a 值为字符串 "Hello",b 变量值为 "Python":

         

  5、字符串的格式化

    5.1、将一个值插入到一个有字符串格式符的字符串中,注意:%s 可以用于替代各种类型的值

    eg:print('字符串:%s,长度为:%d'%('abcdef',5)) #输出'字符串:abcdef,长度为:5'

    5.2、使用format函数

    eg:print('字符串:{str},长度为:{len}'.format(str='abcdefg',len=7)) #输出'字符串:abcdefg,长度为:7'

    5.3、python字符串格式化符号:

      

  6、转义字符

    

  7、字符串常用方法

   7.1、strip():去掉字符串两边的空格和换行符

      strip(str):去掉字符串两边的str

      lstrip():去掉左边的空格和换行符

         rstrip():去掉右边的空格和换行符

      备注:1)、该方法不会改变原来字符串的值;

         2)、如下所示,当你传的参数不管是“abc”还是abc的其他排列形式,这都不重要,重要的是函数只知道你要删除的字符是”a”,”b”,”c”。函数会把你传的参数拆解成一个个的字符,然后把头尾的这些字符去掉。

              

      7.2、upper():把字符串转换为大写

      7.3、lower():把字符串转换为小写

      7.4、capitalize():把首字母改成大写

      7.5、count(str):统计str在字符串中出现的次数

   7.6、replace(str1,str2):把str1替换成str2,如果字符串中不存在str1,不会报错

     7.7、endswith(str):字符串是否以str结尾

                   endswith(str,start,end):字符串从start开始,到end-1结束之间的字符串子串中是否以str结尾

      

      7.8、startswith(str):是否以字符串str开头

      7.9、split():默认用空格分割字符串

       splict(str):根据str分割字符串,返回值是一个list,如果字符串中不存在str,则把整个字符串作为list的一个元素返回

       splitlines():以' '分割字符串

      7.10、find(str,start,end):检查str是否包含在字符串中,如果start和end指定范围,则检查是否包含在指定范围内,如果是则返回第一个出现的索引值,否则返回-1

      7.11、index(str,start,end):跟find()方法一样,只不过如果str不在字符串中会报一个异常

   7.12、isalnum():字符串至少有一个字符并且所有字符都是字母或数字则返回 True,否则返回 False

      7.13、isalpha():字符串至少有一个字符并且所有字符都是字母则返回 True,否则返回 False

      7.14、isdigit():如果是正整数(包含0)则返回 True 否则返回 False

      7.15、isspace():如果只包含空格,则返回 True,否则返回 False

   7.16、islower():字符串中包含至少一个字母,且所有字符都是小写的,则返回True,否则返回False

                      isupper():字符串中包含至少一个字母,且所有字符都是大写的,则返回True,否则返回False

   7.17、'连接符'.join:把字符串、列表、元组、字典的元素按照连接符组合成字符串,当参数是字典时,只会组合key的值【作用于.split()相反】

      

    7.18、str.zfill(n):将字符串自动填充到n位,前面自动补0

      

    7.19、string类中可以自带[a-zA-Z0-9]的方法:

      


列表

  1、列表是最常用的数据类型,可以作为一个方括号内的逗号分隔值出现,列表的数据项不需要具有相同的类型;索引值从0开始。

  2、获取列表的值:

    2.1、变量名:获取所有元素

    2.2、变量名[下标]:左边下标从0开始,当下标为负值时从右边取值(右边下标从-1开始),当输入的下标不存在

                                            时,脚本执行会报错;

    2.3、变量名.count(元素值):查询某个元素在list里面出现的次数;

    2.4、变量名.index(元素值):查找元素的下标,如果输入的元素不存在,会报错;

    2.5、变量名.reverse():反转list,没有返回值时,显示None     

                  

    2.6、列表切片:变量名[start:end] 表示从下标start开始,到下标end-1结束之间的元素

                 备注:1)、当start为空时,表示从下标0开始截取;如果end为空时,表示截取到最后一个元素,注意即使为空,冒号:也不可以省略;

        2)、当下标为负数时,表示从右边开始截取,最右边的元素下标为-1,以此类推;

        3)、变量名[start:end:步长] 表示从下标start开始,到下标end-1结束之间的元素按照(步长-1)的长度取值

     

  3、添加元素:

    3.1、.append(元素):将元素插入到列表的末尾

         3.2、.insert(下标,元素):将元素插入到列表指定的位置

      备注:insert函数是将原来下标的元素往后移,所以当想把元素插入到列表末尾,只能用append函数

      

  4、删除元素:

    4.1、.pop():删除末尾最后一个元素

    4.2、.pop(下标):删除列表中指定位置的元素,如果输入的下标不存在会报错并提示下标越界

    4.3、.remove(元素):删除列表中指定的元素,当存在多个相同元素时,则删除第一个出现的元素

    4.4、del list[下标]:删除列表中指定位置的元素,当下标输入负值时,即从右到左,下标从-1开始

    

  5、修改元素值:list[下标] = 元素

    

   6、清空列表元素:.clear()

   7、排序:

     7.1)、.sort():升序排序,当列表中存在多种类型的元素时,不能进行排序

     7.2)、.sort(reverse=True):降序排序

   8、加入另一个列表:

   8.1)、list1.extend(list2)   :将list2的内容添加到list1中,返回结果为None

      8.2)、list_new = list1 + list2

      8.3)、list_new = list1 * 3    将list1 重复三次赋值给list_new

   9、判断元素是否存在于列表中:in 、not in

   10、列表长度:len(list1)

   11、枚举,可以同时枚举下标和元素:enumerate(list1)

    

    输出结果:

   12、循环删除list元素:同一个list不能在循环中删除元素,会因为下标错位导致结果有误,可以通过定义一个元素一样的list进行删除

    

   13、浅拷贝:将某个列表赋值给另一个变量即为浅拷贝,两个变量指向的是同一个地址

    

   14、深拷贝:一种方法是重新定义一个元素相同的列表,在内存中重新开辟空间保存数据;另一种是使用方法copy.deepcopy(l1)

     

原文地址:https://www.cnblogs.com/wu-xw/p/9551566.html