zoukankan      html  css  js  c++  java
  • 自学Python_Day01


    Python的数据类型

    5个标准数据类型

    • Numbers(数字)
    • String(字符串)
    • List(列表)
    • Tuple(元组)
    • Dictionary(字典)

    集合类型

    • 列表
    • 元组
    • 字典

    元素与元组的区别

    Python中两种基本的数据结构

    • 序列
    • 映射
    • 序列包含可变数列、不可变的元组。映射就是字典
    • 列表和元组只是一类元数据的集合体,而字典是名字来引用值的数据

    切片

    • 访问序列元素的另一种方法,可以访问一定范围内的元素

    • sname[start:end:step]

      • sname 序列的名称
      • start 起始位置(包括该位置),默认为0
      • end 截止位置(不包括该位置),不指定默认为序列的长度
      • step 表示步长,默认为1

    列表

    • 创建列表 [ , ]
    • 列表内的元素可以是不同数据类型
    • 数组里只能放一种类型的数据
    • Python是最通用的复合型数据
    # 创建普通列表
    >>> movie=['我和我的祖国','中国机长','哪吒','攀登者']
    >>> movie
    ['我和我的祖国', '中国机长', '哪吒', '攀登者']
    >>> number=[1,2,3,4]
    >>> number
    [1, 2, 3, 4]
    

    言简意赅,就是定义一个列表,并注明列表中有哪些量,就像是数学中的数组。

    # 创建混合列表
    >>> mix=[1,"70周年大阅兵",3.14,[12,3,67.9]]
    >>> mix
    [1, '70周年大阅兵', 3.14, [12, 3, 67.9]]
    
    # 创建空列表
    >>> empty=[]    #提前定义一个空列表以后备用
    >>> empty
    []
    

    通常可以定义一个空的列表,留作以后备用

    给列表添加元素

    • append(附加) 一次只能添加一个元素,在末尾添加
    • extend(延伸) 用新的列表扩展列表
    • insert(插入) 向指定位置添加元素
    >>> movie
    ['我和我的祖国', '中国机长', '哪吒', '攀登者']
    >>> number
    [1, 2, 3, 4]
    
    # append是在列表movie最后添加一个元素
    >>> movie.append("双子杀手")
    >>> movie
    ['我和我的祖国', '中国机长', '哪吒', '攀登者', '双子杀手']
    
    #  extend是向列表中添加一个列表的元素,适合向列表中添加多个元素
    >>> movie.extend(["犯罪现场","急速逃脱"])
    >>> movie
    ['我和我的祖国', '中国机长', '哪吒', '攀登者', '双子杀手', '犯罪现场', '急速逃脱']
    
    # insert是可以向列表中指定位置添加元素
    >>> movie.insert(1,"宠爱")
    >>> movie
    ['我和我的祖国', '宠爱', '中国机长', '哪吒', '攀登者', '双子杀手', '犯罪现场', '急速逃脱']
    >>> movie.insert(5,"风暴")
    >>> movie
    ['我和我的祖国', '宠爱', '中国机长', '哪吒', '攀登者', '风暴', '双子杀手', '犯罪现场', '急速逃脱']
    

    需要注意的是,使用insert插入数据时,前面的序号,即为元素的编号,称之为索引。索引是以0开始的。所以第一个元素的索引为0,以此类推!

    删除列表中的元素

    • remove 必须要知道元素的值
    • del语句 del是一个语句关键字
    • pop 默认删除最后一个元素的值,也可以指定位置元素的值,会返回一个值
    # 创建一个列表
    >>> movie=['我和我的祖国','中国机长','哪吒','攀登者']
    >>> movie
    ['我和我的祖国', '中国机长', '哪吒', '攀登者']
    
    # remove必须要指定元素的值才可以删除
    >>> movie.remove("攀登者")
    >>> movie
    ['我和我的祖国', '中国机长', '哪吒']
    
    # del语句删除列表中的元素时,可以不需要知道元素的值
    # 只需要知道元素对应的编号,即索引。删除索引对应的元素。
    >>> del movie[0]
    >>> movie
    ['中国机长', '哪吒']
    
    # del语句还可以删除整个列表
    >>> del movie
    >>> movie
    Traceback (most recent call last):
      File "<pyshell#44>", line 1, in <module>
        movie
    NameError: name 'movie' is not defined
    
    # 创建列表
    >>> movie=["我和我的祖国","中国机长","哪吒","攀登者"]
    >>> movie
    ['我和我的祖国', '中国机长', '哪吒', '攀登者']
    
    # pop默认删除列表中的最后一个元素
    >>> movie.pop()
    '攀登者'
    >>> movie
    ['我和我的祖国', '中国机长', '哪吒']
    
    # pop也可以删除指定元素
    >>> movie.pop(1)
    '中国机长'
    >>> movie
    ['我和我的祖国', '哪吒']
    

    读取列表

    • 列表的取值
    • 读取单个值,利用索引值
    • 获取多个元素的值,切片、截取、分片(slice)
    # 创建列表
    >>> movie=["我和我的祖国","中国机长","哪吒","攀登者"]
    >>> movie
    ['我和我的祖国', '中国机长', '哪吒', '攀登者']
    
    # 列表名[number]即可读取指定元素的值
    >>> movie[1]
    '中国机长'
    
    # 列表名[number1:number2]即可读取指定范围内的元素的值。
    # 不包括索引为number2的元素。就像是我们数学上的半闭半开区间。
    >>> movie[1:3]
    ['中国机长', '哪吒']
    >>> movie[:3]
    ['我和我的祖国', '中国机长', '哪吒']
    
    # 列表名[:]表示列表内的全部元素,可用在列表的拷贝
    >>> movie[:]
    ['我和我的祖国', '中国机长', '哪吒', '攀登者']
    >>> movie2=movie[:]
    >>> movie2
    ['我和我的祖国', '中国机长', '哪吒', '攀登者']
    >>> movie3=movie
    >>> movie3
    ['我和我的祖国', '中国机长', '哪吒', '攀登者']
    
    # 列表名[:number]与指定范围一样,是指定从索引为第0个元素到number个元素。
    # 同样不包括number。
    >>> movie4=movie[:3]
    >>> movie4
    ['我和我的祖国', '中国机长', '哪吒']
    

    列表的常用操作符

    • 比较操作符
    • 逻辑操作符
    >>> list1=[100]
    >>> list2=[666]
    
    # 判断list1是否大于list2,False表示否,True表示是
    >>> list1>list2    #比较操作符
    False
    
    >>> list1=[100,676]
    >>> list2=[20,989,77777]
    
    # 在做比较少的时候,只比较索引为0的元素,即列表中的第一个元素
    >>> list1>list2
    True
    >>> list3=[123,456]
    
    # 判断list1>list2 并且 list1<list3?
    >>> (list1>list2) and (list1<list3)    #逻辑操作符
    True
    
    • 连接操作符
    >>> list1=[123,456]
    >>> list2=[321,654]
    
    # 连接操作符,即将两个列表中的元素连接到一个列表中。就像是合并。
    >>> list3=list1+list2    #连接操作符
    >>> list3
    [123, 456, 321, 654]
    
    • 重复操作符
    • 成员关系操作符
    >>> list1=[100]
    
    # 即将某列表重复指定遍输出
    >>> list1*3    #重复操作符
    [100, 100, 100]
    
    # 将列表中的元素值同等的重复指定遍并保存
    >>> list1
    [100]
    >>> list1*=3
    >>> list1
    [100, 100, 100]
    
    # 即判断某个元素是否存在于某列表中
    >>> list2=["计算机学院","外语学院","商学院","建筑学院"]
    >>> 100 in list2    #成员关系操作符
    False
    >>> 100 not in list2
    True
    >>> list3=[123,["北京","武汉"],456]
    >>> "北京" in list3
    False
    >>> "北京" in list3[1]
    True
    
    • 当列表中还有列表时,可以使用列表名[num][num]来指定列表中的第几个列表的哪个元素。
    >>> list3
    [123, ['北京', '武汉'], 456]
    
    # 索引为1的列表中第一个元素元素
    >>> list3[1][0]    #类似二维数组
    '北京'
    >>> list3[1].extend(["西安","十堰","黄冈"])
    >>> list3
    [123, ['北京', '武汉', '西安', '十堰', '黄冈'], 456]
    >>> list3[1][3]
    '十堰'
    

    拷贝与分片拷贝

    >>> list1=[9,8,7,6,5,4,3,2,1]
    
    # 拷贝即将整个列表复制
    >>> list2=list1    #拷贝,类似于变量的赋值操作
    >>> list2
    [9, 8, 7, 6, 5, 4, 3, 2, 1]
    
    # 分片拷贝是将列表中的某一段复制到另一列表中
    >>> list3=list1[:]    #分片拷贝
    >>> list3
    [9, 8, 7, 6, 5, 4, 3, 2, 1]
    

    排序

    • sort(种类) sort就像是Linux中的功能一样,排序,默认是正序
    >>> list1.sort()    #排序
    >>> list1
    [1, 2, 3, 4, 5, 6, 7, 8, 9]
    >>> list2
    [1, 2, 3, 4, 5, 6, 7, 8, 9]
    >>> list3    #排序不会传递给list3
    [9, 8, 7, 6, 5, 4, 3, 2, 1]
    

    访问值、切片(截取/取值)

    >>> list=[1,200.99,'Python',True]
    >>> list
    [1, 200.99, 'Python', True]
    >>> print(list[0])    #输出列表的第一个元素
    1
    >>> print(list[0:3])    #输出列表的0、1、2元素
    [1, 200.99, 'Python']
    >>> print(list[1:3])    #输出列表的1、2元素
    [200.99, 'Python']
    
    • 需要注意的是,这里的数字并不是代表着列表中第几个元素,而是代表它们的索引。
    • 元素值可以使不同类型,也可以是相同类型。

    更新/修改列表

    • 更新列表
    >>> list=[1,200.99,'Python',True]
    >>> list
    [1, 200.99, 'Python', True]
    
    # 指定元素进行修改
    >>> list[0]=100    #修改列表的0元素为100
    >>> print(list)
    [100, 200.99, 'Python', True]
    
    • 删除列表元素
    >>> list=[1,200.99,'Python',True]
    
    # 删除列表中的指定元素
    >>> del list[0]    #删除列表的第一个元素
    >>> print(list)
    [200.99, 'Python', True]
    
    • 列表相加/组合
    >>> list1=[1,200.99,'Python',True]
    >>> list2=['A','B','C']
    
    # 即将两个列表中的元素合并
    >>> print(list1+list2)    #两个列表相加
    [1, 200.99, 'Python', True, 'A', 'B', 'C']
    
    • 列表相乘
    >>> list=[1,200.99]
    
    # 与列表的重复操作相同,是将元素重复制定次
    >>> print(list*3)    #列表元素乘3
    [1, 200.99, 1, 200.99, 1, 200.99]
    
    • 输出最小、最大、长度
    >>> list1=[1,200.99,True]
    >>> print(min(list1))    #输出列表最小元素
    1
    >>> print(max(list1))    #输出列表最大元素
    200.99
    >>> print(len(list1))    #输出列表长度,即元素个数
    3
    

    min——minimum(最小)
    max——maximum(最大)
    len——length(长度)

    成员检查

    • 与列表的成员关系操作符相同
    >>> list=[1,200.99]
    >>> print(6 in list)    #检查元素6是否在list列表中
    False
    >>> print(1 in list)    #检查元素1是否在list列表中
    True
    

    函数

    list函数

    >>> name="Hello"
    >>> print(list('Hello'))    #将元祖转换为列表,使用单引号
    ['H', 'e', 'l', 'l', 'o']
    >>> print(list(name))
    ['H', 'e', 'l', 'l', 'o']
    

    count()函数

    • 统计列表中某元素出现的次数
    >>> list=[1,2,3,3,3]
    
    # 统计list列表中元素3出现的次数
    >>> print(list.count(3))
    3
    

    extend()函数

    • 修改原序列,连接两个序列产生新的序列
    >>> list1=[1,2,3,3,3,]
    >>> list2=['a','b','c']
    
    # 即将list2中的元素拓展到列表list1中
    >>> list1.extend(list2)
    >>> print(list1)
    [1, 2, 3, 3, 3, 'a', 'b', 'c']
    >>> print(list2)
    ['a', 'b', 'c']
    

    append()函数

    • 往列表的最后一个位置插入(入栈)操作
    >>> list=[1, 2, 3, 3, 3]
    
    # 向列表list最后插入一个元素
    >>> list.append('Python')
    >>> print(list)
    [1, 2, 3, 3, 3, 'Python']
    

    insert()函数

    • 将元素插入到列表的指定位置
    >>> list=[1,2,3,3,3,]
    
    # 向list列表中第二个位置插入元素
    >>> list.insert(1,'Python')
    >>> print(list)
    [1, 'Python', 2, 3, 3, 3]
    

    pop()函数

    • 删除指定位置元素
    >>> list=[1,2,3,3,3,]
    
    # 默认删除列表的最后一个元素,并将删除的元素打印出来
    >>> list.pop()
    3
    >>> print(list)
    [1, 2, 3, 3]
    
    # 指定删除索引为1的元素
    >>> list.pop(1)
    2
    >>> print(list)
    [1, 3, 3]
    

    pop()函数默认删除的是最后一个元素(出栈

    remove()函数

    • 删除列表中某一个值的第一个匹配选项
    >>> list=[1,2,3,3,3,]
    
    # 删除列表中第一个匹配到的3,即原索引为2的元素
    >>> list.remove(3)
    >>> print(list)
    [1, 2, 3, 3]
    >>> 
    
    • 删除列表中所有的匹配项
    list=[1,2,3,3,3]
    while 3 in list:
        list.remove(3)
    print(list)
    
    • 这里使用了一个while循环,所以需要在新的模块写。File——New File
    • 然后再写入以上代码,注意循环所做的语句一定要空四格,或者按一个Tab。gou肉肉一提醒我就想起来Tab也是四个空格了。
    • 然后需要保存,再运行。Run——Run Module

    reverse()函数

    • 翻转列表
    list=[1,2,3,3,3]
    list.reverse()
    print(list)
    
    • 对元素进行排序
    >>> list=[1,5,3,9,6]
    >>> print(list.reverse())
    None
    
    • reverse(颠倒),即将列表中的元素颠倒顺序
    • print(list.reverse())的输出为None,是因为reverse()没有返回值

    index()函数

    • 从列表中找出与某个元素匹配的第一个匹配项的位置
    >>> list=[1,2,3,3,3,3,3,3,3]
    >>> print(list.index(3))
    2
    
    # 表示匹配list列表中元素3在4-8这个索引范围内第一次匹配到的位置
    >>> print(list.index(3,4,8))
    4
    

    sort()函数

    • 元素进行排序
    >>> list=[100,80,200,1]
    >>> list.sort()
    >>> print(list)
    [1, 80, 100, 200]
    
    >>> list=[100,80,200,1]
    >>> print(list.sort())
    None
    

    print(list.sort())输出为None,因为sort()没有返回值

    以上内容纯属自学,如有错误或不详,敬请指出!
    
    本文作者: 坏坏
  • 相关阅读:
    给最小化托盘增加右键菜单
    (转)c#实现开机自启动
    Socket代码
    (转)C# Socket简单例子(服务器与客户端通信)
    (转)C# Socket异步通信
    (转)winform pictureBox后台显示图片
    验证DataGridView单元格的值
    批处理判断是否有.net环境
    Winform判断是否已启动
    linux 下 apache启动、停止、重启命令
  • 原文地址:https://www.cnblogs.com/bad5/p/12424295.html
Copyright © 2011-2022 走看看