1.序列

  python含有6种内建序列——列表,元组,字符串,Unicode字符串,buffer对象,xrange对象

2.通用序列操作

2.1 索引

注:   input()根据用户输入变换相应的类型,而且如果要输入字符和字符串的时候必须要用引号包起来,

   raw_input()则是不管用户输入什么类型的都会转变成字符型.

2.2 分片

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

(1) numbers[:]

[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]    #整个列表

(2) numbers[3:5]

[4, 5]                                    #包括起始索引对应的元素,但不包括截至索引对应的元素

(3) numbers[-5:-3]

[6, 7]                                    #注意索引的顺序

(4) numbers[3,3]

[]                                         #空列表

(5) numbers[-5, 9]

[6, 7, 8, 9]                           #混合正负索引

(6) numbers[-20, 20]

[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]   #好像不存在index out of range的问题

(7) numbers[8, -8]

[]                                         #索引区间为空

2.3 序列相加

  注:两种相同类型的序列才可以相加

2.4 乘法

2.5 成员资格:   in

2.6 长度,最小值和最大值

  len()——返回序列中包含的元素数量

  min()——序列中最大元素

  max()——序列中最小元素

3.列表

3.1 list函数

  功能:将字符创转化为列表,例:

3.2 基本操作

(1).赋值

     

(2).删除

  

(3).分片赋值

  可以一次为多个元素赋值;

  与原序列不等长序列将分片替换;

  不替换任何元素的情况下插入新元素;

  支持删除元素;  

  cmp(list1, list2):比较两个列表的元素
  len(list):列表元素个数

  max(list):返回列表元素最大值
  min(list):返回列表元素最小值
  list(seq):将元组转换为列表

列表操作包含以下方法:
  list.append(obj):在列表末尾添加新的对象
  list.count(obj):统计某个元素在列表中出现的次数
  list.extend(seq):在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)
  list.index(obj):从列表中找出某个值第一个匹配项的索引位置
  list.insert(index,
obj):将对象插入列表
  list.pop(obj=list[-1]):移除列表中的一个元素(默认最后一个元素),并且返回该元素的值
  list.remove(obj):移除列表中某个值的第一个匹配项
  list.reverse():反向列表中元素
  list.sort([func]):对原列表进行排序

注1:保有原有列表的排序:

(1).拷贝副本,再排序

  

(2).sorted()函数,可用于任何序列,返回的都是列表

  

注2:sort方法的可选参数——cmp,key和reverse

   函数原型:   L.sort(cmp=None, key=None, reverse=False) 

  参数说明:
    (1)  cmp参数
        cmp接受一个函数,拿整形举例,形式为:
          def f(a,b):
             return a-b
        如果排序的元素是其他类型的,如果a逻辑小于b,函数返回负数;a逻辑等于b,函数返回0;a逻辑大于b,函数返回正数就行了
    (2)  key参数
         key也是接受一个函数,不同的是,这个函数只接受一个元素,形式如下
        def f(a):
           return len(a)
        key接受的函数返回值,表示此元素的权值,sort将按照权值大小进行排序
    (3) reverse参数
        接受False 或者True 表示是否逆序
  sort举例:
    (1)按照元素长度排序
       L = [{1:5,3:4},{1:3,6:3},{1:1,2:4,5:6},{1:9}]
      def f(x):
          return len(x)

      sort(key=f)

      print L
      输出:

[{1: 9}, {1: 5, 3: 4}, {1: 3, 6: 3}, {1: 1, 2: 4, 5: 6}]
 
    (2)按照每个字典元素里面key为1的元素的值排序
       L = [{1:5,3:4},{1:3,6:3},{1:1,2:4,5:6},{1:9}]
      def f2(a,b):
          return a[1]-b[1]
      L.sort(cmp=f2)
      print L
      输出:

[{1: 1, 2: 4, 5: 6}, {1: 3, 6: 3}, {1: 5, 3: 4}, {1: 9}]

4.元组

 tuple()函数:将一个序列作为参数转换为元组

python基础教程总结1——列表和元组的更多相关文章

  1. python基础教程-第二章-列表和元组

    本章将引入一个新的概念,:数据结构.数据结构是通过某种方式(例如对元素进行编号)组织在 一起的数据元素的集合,这些数据元素可以是数字或者字符,甚至可以是其他数据结构.在python中,最基本的数据结构 ...

  2. Python基础:序列(列表、元组)

    一.概述 列表(list)是由一个个 Python对象 组成的序列.其中,Python对象 可以是任何类型的对象,包括 Python标准类型(数值.字符串.列表.元组和字典)以及 用户自定义类型(类) ...

  3. Python基础(3)--列表和元组

    Python包含6种内建序列:列表.元组.字符串.Unicode字符串.buffer对象.xrange对象 本篇主要讨论最常用的两种类型:列表.元组 本文地址:http://www.cnblogs.c ...

  4. Day2 Python基础学习——字符串、列表、元组、字典、集合

    Python中文学习大本营:http://www.pythondoc.com/ 一.字符串操作 一.用途:名字,性格,地址 name = 'wzs' #name = str('wzs')print(i ...

  5. Python基础系列----序列(列表、元组、字符串)

    1.定义                                                                                               1 ...

  6. Python基础(4)列表、元组、字符串、字典、集合、文件操作

    列表.元组操作 字符串操作 字典操作 集合操作 文件操作 字符编码与转码 详见:http://www.cnblogs.com/alex3714/articles/5717620.html 1.列表和元 ...

  7. python基础_字典_列表_元组考试_day4

    1.请用代码实现:利用下划线将列表的每一个元素拼接成字符串,li=['alex','eric','rain'] li=['alex','eric','rain'] v="_".jo ...

  8. python基础--字符串操作、列表、元组、文件操作

    一.变量及条件判断 1.字符串.布尔类型.float.int类型,None都是不可变变量 2.字符串是不可变变量,不可变变量就是指定义之后不能修改它的值 3.count +=1和count=count ...

  9. python基础(三)--列表、元组、字典

    一.列表: 有序序列,支持索引.切片.循环(for,while) 元素可以被修改: 元素可以是任何数据类型(数字,字符串,列表,布尔值...),可以嵌套: ##增 1.append(object)   ...

随机推荐

  1. Django ORM 那些相关操作

    Django ORM 那些相关操作 一般操作 必知必会13条 <> all(): #查询所有的结果 <> filter(**kwargs) # 它包含了与所给筛选条件相匹配的对 ...

  2. Linux 系统初始化和服务

    系统的初始化和服务 1. Linux 系统启动流程 打开计算机,从主板 BIOS(Basic Input/Out System)读取其中所存储的程序,引导你找到存储系统的硬件(如光盘.硬盘等) 接下来 ...

  3. win10彻底关闭自动更新

    第1步 https://jingyan.baidu.com/article/9faa7231e7b78b473c28cbb6.html 第2步 http://www.360doc.com/conten ...

  4. 洛谷P1829 [国家集训队]Crash的数字表格 / JZPTAB(莫比乌斯反演)

    传送门 式子好麻烦orz……大佬好腻害orz->这里 //minamoto #include<iostream> #include<cstdio> #define ll ...

  5. LuoguP2323 [HNOI2006]公路修建问题 【最小生成树+二分】By cellur925

    题目大意:给你\(n\)个点,\(m\)条边,每条边上有两个权值:一级和二级的.选\(n-1\)条边使这个图连通,并至少有\(k\)个一级边,求花费最多的一条边最小值及方案. 最大值最小,肯定会先想到 ...

  6. java 同时安装多版本问题(转)

    描述:刚到新公司,自己安装了jdk1.7和开发工具myeclipse10,但是由于公司项目的需要(具体原因不详细描述了),需要使用myeclipse6.5和jdk1.6.于是在切换jdk1.7和jdk ...

  7. 概念端类型“xxx”中的成员“ID”的类型“Edm.Decimal”与对象端类型“xxx”中的成员“ID”的类型“System.Int64”不匹配

    概念端类型“xxx”中的成员“ID”的类型“Edm.Decimal”与对象端类型“xxx”中的成员“ID”的类型“System.Int64”不匹配 使用EF实体模型映射之后将edmx中xml映射关系中 ...

  8. iOS 隐藏百度地图SDK的百度LOGO

    第一个思路:找到LOGO对应的UIIMageView,并将其隐藏hidden // 隐藏百度地图Logo UIView *mView = _mapView.subviews.firstObject; ...

  9. Djano调试工具debug-toolbar

    Djano调试工具debug-toolbar   django-debug-toolbar 调试工具使用文档 安装 pip install django-debug-toolbar 配置 在setti ...

  10. [Android]进程间通信的方法

    一.管道 管道是进程间通信中最古老的方式,它包括 无名管道 和 有名管道两种,前者用于父进程和子进程间的通信,后者用于运行于同一台机器上的任意两个进程间的通信. 无名管道由pipe()函数创建. #i ...