• 2017.07.17 Python网络爬虫之Python基础2


    1.列表:列表是Python最常用的变量类型,列表是一个可变序列,序列中的每一个元素都分配一个数字即它的位置,或者叫做索引

    列表中的元素可以是数字,字符串,列表,元组,字典....

    (1)Python使用中括号[],来解析列表,给一个变量赋值为空列表,很简单,执行var=[]就可以了

    (2)列表的基本操作很简单,常用的操作一般是:创建列表,插入列表,追加数据,访问数据,删除数据

    创建列表:

     插入,追加,删除列表数据:

     

    列表分片:对列表最常用的操作,分片可以简单的理解为将一个列表分成几块,它的操作方法是list[index1:index2[:step]]

     

     写一个简单的程序验证列表的属性和操作方法:showList.py

    # !usr/bin/env python
    # -*- coding:utf-8 -*-

    class ShowList(object):
    def __init__(self):
    self.L1=[]
    self.L2=[]

    self.createList()
    self.insertData()
    self.appendData()
    self.deleteData()
    self.subList()

    def createList(self):
    print("创建列表:")
    print("L1=list('abcdefg')")
    self.L1=list('abcdefg')
    print("L2=[]")
    print("for i in xrang(0,10):")
    print(" L2.append(i)")
    for i in xrange(0,10):
    self.L2.append(i)
    print("L1= ")
    print(self.L1)
    print("L2= ")
    print(self.L2)
    print(" ")

    def insertData(self):
    print(u"插入数据")
    print(u"L1列表中第三个位置插入数字100,执行命令:L1.insert(3,100)")
    self.L1.insert(3,100)
    print("L1= ")
    print(self.L1)
    print(u"L2列表中第10个位置插入字符串'python',执行命令:L2.insert(10,'python')")
    self.L2.insert(10,'python')
    print("L2= ")
    print(self.L2)
    print(' ')

    def appendData(self):
    print(u"追加数据")
    print(u"L1列表尾追加一个列表[1,2,3],执行命令:L1.append([1,2,3])")
    self.L1.append([1,2,3])
    print("L1= ")
    print(self.L1)
    print(u"L2列表尾追加一个元组('a','b','c'),执行命令:L2.append(('a','b','c'))")
    self.L2.append(('a','b','c'))
    print("L2 = ")
    print(self.L2)
    print(' ')

    def deleteData(self):
    print(u"删除数据")
    print(u"删除L1的最后一个元素,执行命令:L1.pop()")
    self.L1.pop()
    print("L1 = ")
    print(self.L1)
    print(u"删除L1的第一个元素,执行命令:L1.pop(0)")
    self.L1.pop(0)
    print("L1 =")
    print(self.L1)
    print(u"删除L2的第四个元素,执行命令:L2.pop(3)")
    self.L2.pop(3)
    print("L2 =")
    print(self.L2)
    print(' ')

    def subList(self):
    print(u"列表分片")
    print(u"取列表L1的第三个到最后一个元素组成的新列表,执行命令:L1[2:]")
    print(self.L1[2:])
    print(u"取列表L2的第二个到倒数第二个元素组成的新列表,步长为2,执行命令:L2[1:-1:2]")
    print(self.L2[1:-1:2])
    print(' ')

    if __name__=='__main__':
    print("演示列表操作: ")
    sl=ShowList()


    执行结果如下:

    2.元组:Python的元组与列表非常相似,不同之处在于元组的元素是不可修改的,它是一个不可变序列,列表使用[]声明,元组使用()声明

    (1)创建一个空元组,执行命令var=()

    (2)元组中的元素不可修改,所以列表中的操作方法insert,append,pop等操作对于元组都没有,但是元组与列表高度相似,所以列表的切片对元组是完全适用的(切片并不改变原始数据)

    (3)列表中修改元素值的操作对元组来说都不适用,列表中不修改元素值的操作对元组来说都可以;

    (4)元组和列表是可以互相转换的,使用tuple(list)可以将一个列表转换成元组,使用list(tuple)可以将一个元组转化成列表

    编写一个showTuple.py实验一下:

    # !usr/bin/env python
    # -*- coding:utf-8 -*-

    class ShowTuple(object):
    def __init__(self):
    self.T1=()
    self.createTuple()
    self.subTuple(self.T1)
    self.tuple2List(self.T1)

    def createTuple(self):
    print(u"创建元组:")
    print(u"T1=(1,2,3,4,5,6,7,8,9,10)")
    self.T1=(1,2,3,4,5,6,7,8,9,10)
    print(u"T1 =")
    print(self.T1)
    print(' ')

    def subTuple(self,Tuple):
    print(u"元组分片:")
    print(u"取元组T1的第四个到最后一个元组组成的新元组,执行命令:T1[3:]")
    print(self.T1[3:])
    print(u"取元组T1的第二个到倒数第二个元素组成的新元组,步长为2,执行命令:T1[1:-1:2]")
    print(self.T1[1:-1:2])
    print(' ')

    def tuple2List(self,Tuple):
    print(u"元组转换成列表:")
    print(u"显示元组")
    print(u"T1= ")
    print(self.T1)
    print(u"执行命令:L2=list(T1)")
    L2=list(self.T1)
    print(u"显示列表")
    print(u"L2 =")
    print(L2)
    print(u"列表追加一个元素100后,转换为元组,执行命令:L2.append(100) tuple(L2)")
    L2.append(100)
    print(u"显示新元组")
    print(tuple(L2))

    if __name__=='__main__':
    st=ShowTuple()



    执行结果如下:

    
    
  • 相关阅读:
    echarts动态设置主体颜色
    spring security session
    Spark RDD函数:
    MapReduce TOP n
    feign 使用示例
    trie树
    动态修改注解(annotation)值
    golang插件
    Kafka Streams Example
    tcp并发(c18w)
  • 原文地址:https://www.cnblogs.com/hqutcy/p/7197648.html
Copyright © 2020-2023  润新知