python基础教程002_列表与元组

时间:2023-03-10 04:49:46
python基础教程002_列表与元组

1.列表

  定义:

    edward = ['Edward Gumdy',42] 描述edward姓名与年龄的列表

    edward = [] 空列表

  操作:

    索引:

      greeting = 'hello'

      print(greeting = [0])

      'h'

      print(greeting = [-1])

      'o'

      print(greeting = [1])

      'e'

      可与函数组合

      print(raw_input("year:')[3])

      Year:2005

      '5'

    例:

      #月份

      months = ['January','February','March','April','May','June','July','Auguest','September','October','November','December']

      #以1~31的数字作为结尾的列表

      ending = ['st','nd','rd'] + 17*['th']\

           +['st','nd','rd'] +7 *['th']\

           + ['st']

      等价于

      ending = ['st','nd','rd','th','th','th','th','th','th','th','th','th','th','th','th','th','th','th','th','th','st','nd','rd','th','th','th','th','th','th','th','st']

      year = raw_input('Year:')

      month = raw_input('Month(1-12):')

      day = raw_input('Day(1-31):')

      month_number = int(month)

      day_number = int(day)

      print(month_name + ' ' + ordinal +' ' +year)

      输入:

      Year:1974

      Month(1-12):8

      Day(1-31):16

      输出:

      August 16th. 1974

   分片:通过冒号相隔的两个索引实现

      tag = '<a href="http://www.python.org">python web site</a>'

      tag[9:30]

      'http://www.python.org'

      tag[32:4]

      'python web site'

      numbers=[1,2,3,4,5,6,7,8,910]

      numbers[7:10]

      [8,9,10]

      numbers[-3:]

      [8,910]

      numbers[:3]

      [1,2,3]

      numbers[:]

      [1,2,3,4,5,6,7,8,9,10]

      例:

      url = raw_input('Please enter the URL:')

      domain = url[11:-4]

      print("Domain name" +domain)

      输入:

      Please enter the URL: http://www.python.org

      Domain name:python

   分片步长特性

      numbers = [1,2,3,4,5,6,7,8,9,10]

      numbers[0:10:1] ->[1,2,3,4,5,6,7,8,9,10] ->0到10循环分片为1

      numbers[0:10:2]->[1,3,5,7,9]->0到10循环分片为2

      numbers[::4]->[1,5,9]->0到做后一个元素循环,步长为4

      numbers[8:3:-1]->[9,8,7,6,5,]

   叙述相加

      [1,2,3]+[4,5,6]

      [1,2,3,4,5,6]

   乘法

      [42]*5

      [42,42,42,42,42]

   成员资格

      使用in作为检查关键字

      permissions = 'rw'

      'w' in permission

      #检查用户名和PIN码

      database = [

      ['albert', '1234'],
      ['dilber','4242']
      ]  
      username = raw_input('User name ')
      pin = raw_input('PIN code: ')
      if[username,pin] in database:print('Access granted')   

      长度|最小值|最大值

      number = [100,200,300]

      len(number)=3

      max(number)=300

      min(number)=100

      List函数

      list('Hello')

      [‘'H',’e','l','l','o']

      适用于所有类型的列表

    基本列表操作

      1.元素赋值

      2删除元素

      3.分片赋值

    列表方法

      1.append:列表末尾追加新的对象

      2.count:统计某个元素在列表中出现的次数

      3.extend:在列表末尾一次性追加另一个列表中的多个值

      4.index:用于从列表中找出某个值第一个匹配的索引位置

      5.insert:用于将对象插入导列表中

      6.pop:移除列表中的一个元素

      7.remove:用于移除列表中某个值的第一个匹配项

      8.reverse:将列表中的元素反向存放

      9.sort用于在原位置对列表进行排序

      10.cmp用于元素按照特定的方式进行排序(pyton默认排序规则按升序排列元素

元组

    定义

      (1,2,3)->元素为1,2,3的元组

      ()->元素为空的元组

        (42,)元素为1的元组

    tuple函数->将其它序列转换为元组

      tuple([1,2,3])->(1,2,3)

      tuple('abc')->('a','b','c')

      tuple((1,2,3))->(1,2,3)

      dimensions = (1,2,3)

      print(dimensions[0])-> 1

    元组不可修改,如进行以下操作

    dimensions[0] = 5

    遍历元组元素

    for dimension in dimensions:

      print(dimension)

    ->1

    ->2

    ->3