zoukankan      html  css  js  c++  java
  • python自动化学习笔记(三)

    一、数据类型

    常用的数据类型包括str,int,bool,float,list,字典,元组,集合等,布尔类型类型主要记住一句话,非空即真,非0即真。str是可以将任意类

    型转换为字符串的。小数转换为整数,python会做截断处理,会向下取整(注:5.9向下取整5)。那么想要知道数据的数据类型怎么办呢?可以

    使用type函数和isinstance函数,区别在于type函数直接返回数据类型,isinstance函数将第一个参数和后面的数据类型作比较,两者数据类型是一

    致返回true,不一致返回false。常见的强制类型转换的函数如下:

    二、列表

    Python内置的一种数据类型是列表list,列表是利用栈这种数据结构进行存储的,列表可以混合存放多种数据类型的数据,比如可以存放str类型,

    int型,或者列表,列表可以嵌套列表

    如何访问列表中的元素,通过下标取值,也有人称之为角标或者是索引,下标是从零开始计数,最后一个元素的的下标值是-1,如果要取最后一个

    元素,除了计算索引位置外,还可以用-1做索引,直接获取最后一个元素。那怎么访问列表中的列表呢,请看如下示例

    列表是一个可变的有序表,所以可以对列表进行增删改查操作

    增:

    append在列表末尾增加一个元素,参数是一个元素

    insert在指定位置增加一个参数,两个参数,第一个参数代表在列表中的位置 ,第二个参数在第一个元素的位置插入一个元素,如果指定下标不存

    在,那么默认在末尾添加

    extend的作用是用一个列表扩展原来的列表,参数是一个列表

    改:

    要要把某个元素替换成别的元素,可以直接赋值给对应的索引位置

    查:

    查看某个元素在列表中的个数使用count方法,查看某个元素下标使用index方法

    删:

    remove方法只有一个参数,该参数为元素的名字,没有该参数的名称则会报错,不会返回,pop方法参数不是必填的,传入参数指定了下标,那么

    删除指定元素,如果传入参数默认从列表中取出最后一个元素。del不是方法也不是函数,是语句,del 列表名可以删除整个列表,当然也可是指定

    下标删除指定元素。clear方法清空整个列表

    list在循环遍历中删除数据的正确方法:

     补充下关于列表的一些其他比较常用的方法

    reverse()方法作用是将列表翻转,sort()方法作用是对列表成员进行排序,默认情况下不需要参数,升序排序,sort方法一个重要的参数是reverse

     

    三、切片

    切片其实就是一种list取值的方式,可以一次性正向或者反向取多个元素。list还有一种取值方式那就是循环

    切片是顾头不顾尾的,如果切片前面一个值不写的话,从头开始取值。如果切片后面的值不写的话,取到末尾,前面的值和后面的值都不写,那么

    取整个列表。如果想取列表中有间隔的元素怎么办呢,这时就需要设定步长了,步长是正数的话从左往右取,步长是负数的话从右往左取,步长不

    能设置为0

    列表是可以进行拷贝的,那么list1=list[:]和list1=list有区别吗?有大大的区别

    切片也是适用于字符串的,字符串也有下标,如果字符串中包含空格,空格相当于一个元素,也是有下标的。如果想同时得到元素及其对应的下

    标,这时enumerate方法就排上用场了

    四:循环列表,正确删除数据

    list在循环遍历时如何正确删除某一元素,介绍两种通用解决方案。方法一:遍历拷贝list,操作原始list

    方法二:倒叙循环

    五、字典

    字典使用键-值(key-value)存储,是无序的,具有极快的查找速度,比list要快很多,字典怎么取值呢,下面介绍两种取值方式,一种直接取值,

    一种使用get方法取值。两种取值方式有什么不同呢?直接取值,如果key不存在,运行会报错,而get方法取值,默认情况下如果key不存在,会

    返回None,如果设置了默认值

    字典也是可以进行增,删,改的操作

    增:

    改:有且只有以下着一种方式可以更改字典

    删:

    关于字典其他一些常用的方法:key方法,获取到字典的所有key,values方法,获取到字典的所有values

    高效处理字典的写法:

    字典的嵌套用法:

    六、元组

    元组也是list,一旦定义好,是不可变的,也可以使用下标进行取值,那么在什么时候能使用到呢,比如连接mysql的时候,为了防止别人篡改IP或

    端口等固定值,元组就排上用场了,且元组只有两种方法count和index

    七、字符串

    字符串的N种内置方法介绍

    八、文件的读写

    文件有两种打开方式,使用内置函数open(),返回值是一个file对象,python3之前也可以使用file()打开文件,file是一个类使用file('filename','r+')这

    种方式打开文件。如果不指定文件打开的方式,默认打开方式就是r,且但凡是和r有关的打开方式,如果文件不存在都会报错。和w有关的打开方

    式都会把文件内容清空。如果打开图片,音频视频这种文文件怎么办呢,用二进制方式打开文件,比如,‘rb’,'wb','ab'

    以二进制默认打开文件,举个小栗子:

    Windows创建的文件默认编码都是GBK,所以需要制定字符集编码

    文件操作常用的一些方法,readline()方法只读取一行内容,readlines()读取文件里面所有的内容,把文件里面的每一行的内容放到一个list里面,write方

    发写入的必须是字符串,writelines()写的时候,传入一个可迭代的对象。那怎么将write方法和writelines方法用的恰到好处呢?比如字符串'abcdefg’,使用

    write方法会将字符串一次性写入到文件,而使用writelines方法是循环写入,第一次循环写a,第二次循环写b,以此类推直到把整个字符串循环写完。所

    以在写入字符串时,还是使用write方法比较高效。如果要写入的内容是列表,就可以使用writelines方法写入。tell方法可以查看当前指针的位置

    wirte和writelines的区别

     

    如果遇到写入文件,但是文件里面没有任何内容,可以使用flush方法,该方法的作用是立即把缓冲区的里面的内容写到磁盘里面,再介绍一种操

    作文件的方法with,with会自动管理文件的上下文,不需要写关闭文件操作,with会自动帮关闭文件,并且使用with可以打开多个文件

    高效处理文件的方法,举个例子,将下面歌词中的'一'替换成'二':

    修改文件怎么处理呢,介绍两种处理修改文件的思路,第一种方式只适用于文本文件内容比较少的情况,第二种方式的思想是,把处理完的数据写到新的

    文件中,删除源文件,把新的文件命名为原来的文件名字

  • 相关阅读:
    脑机接口不断迎来重大突破,“思想钢印”还会远吗?
    ICLR 2020 | 神经网络架构搜索(NAS)论文推荐
    人工智能理解常识的数十年挑战,如何让 AI 不再“智障”?
    You Are All Excellent 排序
    sort
    sort
    绝对值排序
    绝对值排序
    排序
    排序
  • 原文地址:https://www.cnblogs.com/luoqingqing/p/7554863.html
Copyright © 2011-2022 走看看