type() #检查变量或值得数据类型

  1. >>> type(5)
  2. <class 'int'>

序列:包括字符串、元组和列表。序列都可以用索引、切片、len()(计算元素个数)、x in s 判断s中是否包含x

元组: 不可变,如果修改需要大量的复制,即彻底重新赋值

空元组: ()

单个元素的元组: (x,)  #注意一定要有','

多个元素的元组: (x, y, z) 或 (x, y, z,) #最后的','可有可无

  1. >>> item = (6, 'apple', (1,2))
  2. >>> item
  3. (6, 'apple', (1, 2))
  4. >>> item[0]
  5. 6
  6. >>> item[-1]
  7. (1, 2)
  8. >>> item[-1][0]
  9. 1
  10. >>> item = ()
  11. >>> type(item)
  12. <class 'tuple'>
  13. >>> item = (5)
  14. >>> type(item)
  15. <class 'int'>
  16. >>> item = (5,)
  17. >>> type(item)
  18. <class 'tuple'>

删除元组的第一个元素

  1. >>> item = (1,2,3,4,5)
  2. >>> item2 = item[1:]
  3. >>> item = item2
  4. >>> item
  5. (2, 3, 4, 5)

元组相关函数:

x in tup #x是否在元组内

len(tup) #元组中的元素数

tup.count(x) #元素x在元组中出现的次数

tup.index(x) #元组中第一个x的索引,如没有则出错

+*  #拼接

  1. >>> item
  2. (2, 3, 4, 5)
  3. >>> item*2
  4. (2, 3, 4, 5, 2, 3, 4, 5)
  5. >>> item + (1,2,3)
  6. (2, 3, 4, 5, 1, 2, 3)

列表:可以改变,用[]括起,单元素的末尾不一定要','

  1. >>> numbers = [1,2,3,4,5,6,7]
  2. >>> numbers
  3. [1, 2, 3, 4, 5, 6, 7]
  4. >>> type(numbers)
  5. <class 'list'>
  6. >>> numbers * 2
  7. [1, 2, 3, 4, 5, 6, 7, 1, 2, 3, 4, 5, 6, 7]
  8. >>> numbers[1:]
  9. [2, 3, 4, 5, 6, 7]
  10. >>> numbers[-3:]
  11. [5, 6, 7]
  12. >>> numbers[0]=100
  13. >>> numbers
  14. [100, 2, 3, 4, 5, 6, 7]

列表元素指向相应的值,而不是包含。用自引用说明:

  1. >>> numbers
  2. [100, 2, 3, 4, 5, 6, 7]
  3. >>> numbers[0] = numbers
  4. >>> numbers
  5. [[...], 2, 3, 4, 5, 6, 7]

列表的相关函数:

s.append(x) #在列表s末尾添加元素x

  1. #numnote.py
  2. def numnote(lst):
  3. msg = []
  4. for num in lst:
  5. if num < 0:
  6. s = str(num) + 'is negative'
  7. elif 0 <= num <= 9:
  8. s = str(num) + 'is digit'
  9. else:
  10. break
  11. msg.append(s)
  12. return msg
  1. >>> import numnote
  2. >>> numnote.numnote([1,-1,2,22])
  3. ['1is digit', '-1is negative', '2is digit']

若要逐行打印

  1. >>> for msg in numnote([1,2,3,10]):
  2. print(msg)
  3.  
  4. 1is digit
  5. 2is digit
  6. 3is digit
  7. >>> print('\n'.join(numnote([1,2,3,10])))
  8. 1is digit
  9. 2is digit
  10. 3is digit

s.extend() #在末尾添加一个序列

  1. >>> lst = []
  2. >>> lst.extend('cat')
  3. >>> lst
  4. ['c', 'a', 't']

s.pop(i) #删除并返回索引为i的元素,默认删除最后一个

  1. >>> lst
  2. ['c', 'a', 't']
  3. >>> lst.pop()
  4. 't'
  5. >>> lst.pop(0)
  6. 'c'
  7. >>> lst
  8. ['a']

s.remove(x) #删除s中的第一个x元素,但不返回值

  1. >>> lst
  2. ['a', 'h', 'e', 'l', 'l', 'o', ',', 'e', 'v', 'e', 'r', 'y', 'o', 'n', 'e']
  3. >>> lst.remove('e')
  4. >>> lst
  5. ['a', 'h', 'l', 'l', 'o', ',', 'e', 'v', 'e', 'r', 'y', 'o', 'n', 'e']

s.reverse() #反转列表元素

  1. >>> lst
  2. ['a', 'h', 'l', 'l', 'o', ',', 'e', 'v', 'e', 'r', 'y', 'o', 'n', 'e']
  3. >>> lst.reverse()
  4. >>> lst
  5. ['e', 'n', 'o', 'y', 'r', 'e', 'v', 'e', ',', 'o', 'l', 'l', 'h', 'a']

s.sort() #对元素排序 从小到大 要从大到小排序在调用一次reverse就可以了 也可以对列表中的元组排序

  1. >>> lst
  2. ['e', 'n', 'o', 'y', 'r', 'e', 'v', 'e', ',', 'o', 'l', 'l', 'h', 'a']
  3. >>> lst.sort()
  4. >>> lst
  5. [',', 'a', 'e', 'e', 'e', 'h', 'l', 'l', 'n', 'o', 'o', 'r', 'v', 'y']
  6. >>> lst.reverse()
  7. >>> lst
  8. ['y', 'v', 'r', 'o', 'o', 'n', 'l', 'l', 'h', 'e', 'e', 'e', 'a', ',']
  1. >>> lst = [(1,2),(1,-1),(2,)]
  2. >>> lst
  3. [(1, 2), (1, -1), (2,)]
  4. >>> lst.sort()
  5. >>> lst
  6. [(1, -1), (1, 2), (2,)]

列表解析:用于快速创建列表

  1. >>> [n*n for n in range(1,11)]
  2. [1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
  1. >>> [n*n for n in range(1,11)]
  2. [1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
  3. >>> [2*n**3+4 for n in range(1,11)]
  4. [6, 20, 58, 132, 254, 436, 690, 1028, 1462, 2004]
  5. >>> [c for c in 'pizza']
  6. ['p', 'i', 'z', 'z', 'a']
  7. >>> [c.upper() for c in 'pizza']
  8. ['P', 'I', 'Z', 'Z', 'A']

使用解析进行筛选:

  1. >>> nums = [-1,0,6,-4,2,5]
  2. >>> result = [n for n in nums if n > 0]
  3. >>> result
  4. [6, 2, 5]

删掉元音

  1. >>> ''.join([c for c in 'Apple' if c.lower() not in 'aeiou'])
  2. 'ppl'

不要方括号也可以,将得到生成器表达式

  1. >>> ''.join(c for c in 'Apple' if c.lower() not in 'aeiou')
  2. 'ppl'

字典:也称关联数组、映射或散列表 用{}表示

可以利用来访问,键不可重复不可修改  下面的'red'就是键,2是值

  1. >>> color = {'red':2, 'blue':1, 'green':3}
  2. >>> color['red']
  3. 2
  4. >>> color['blue']=0
  5. >>> color
  6. {'green': 3, 'blue': 0, 'red': 2}

相关函数

items 、 keys、 values、 get、pop、 popitem、 clear、 copy 、fromkeys 、setdefault、 update

  1. #视图
    >>> k = color.keys()
  2. >>> for i in k:print(i)
  3.  
  4. green
  5. blue
  6. red

集合:只包含键,没有相关联的值

删除列表中重复的元素

  1. >>> lst = [1,1,2,2,3,3,3]
  2. >>> lst
  3. [1, 1, 2, 2, 3, 3, 3]
  4. >>> s = set(lst)
  5. >>> s
  6. {1, 2, 3}

【python】入门学习(六)的更多相关文章

  1. python入门学习:9.文件和异常

    python入门学习:9.文件和异常 关键点:文件.异常 9.1 从文件中读取数据9.2 写入文件9.3 异常9.4 存储数据 9.1 从文件中读取数据 9.1.1 读取整个文件  首先创建一个pi_ ...

  2. python入门学习:8.类

    python入门学习:8.类 关键点:类 8.1 创建和使用类8.2 使用类和实例8.3 继承8.4 导入类 8.1 创建和使用类   面向对象编程是最有效的软件编写方法之一.在面向对象编程中,你编写 ...

  3. python入门学习:7.函数

    python入门学习:7.函数 关键点:函数 7.1 定义函数7.2 传递实参7.3 返回值7.4 传递列表7.5 传递任意数量的实参7.6 将函数存储在模块中 7.1 定义函数   使用关键字def ...

  4. python入门学习:6.用户输入和while循环

    python入门学习:6.用户输入和while循环 关键点:输入.while循环 6.1 函数input()工作原理6.2 while循环简介6.3 使用while循环处理字典和列表 6.1 函数in ...

  5. python入门学习:5.字典

    python入门学习:5.字典 关键点:字典 5.1 使用字典5.2 遍历字典5.3 嵌套 5.1 使用字典   在python中字典是一系列键-值对.每个键都和一个值关联,你可以使用键来访问与之相关 ...

  6. python入门学习:4.if语句

    python入门学习:4.if语句 关键点:判断 4.1 一个简单的测试4.2 条件测试4.3 if语句 4.1 一个简单的测试   if语句基本格式如下,注意不要漏了冒号 1if 条件 :2     ...

  7. python入门学习:3.操作列表

    python入门学习:3.操作列表 关键点:列表 3.1 遍历整个列表3.2 创建数值列表3.3 使用列表3.4 元组 3.1 遍历整个列表   循环这种概念很重要,因为它是计算机自动完成重复工作的常 ...

  8. python入门学习:2.列表简介

    python入门学习:2.列表简介 关键点:列表 2.1 列表是什么2.2 修改.添加和删除元素2.3 组织列表 2.1 列表是什么   列表,是由一系列按特定顺序排列的元素组成.你可以创建包含字母表 ...

  9. Python入门学习:1.变量和简单的数据类型

    python入门学习:1.变量和简单的数据类型 关键点:变量.字符串.数字 1.1 变量的命名和使用1.2 字符串1.3 数字1.4 注释 1.1 变量的命名和使用   变量,顾名思义是一个可变的量, ...

  10. Python入门学习之路,怎么 “开心,高效,踏实” 地把Python学好?兴趣,兴趣,兴趣!

    Python入门学习之路,怎么 “开心,高效,踏实” 地把Python学好?兴趣,兴趣,兴趣!找到你自己感兴趣的点进行切入,并找到兴趣点进行自我驱动是最好的学习方式!       推荐两本书,一本作为 ...

随机推荐

  1. JS,html压缩及混淆工具

    现在已经出现了不少有自己特色的: JSMin Javascript compressor Packer Closure Compiler YUI Compressor Pretty Diff Java ...

  2. [译]git reflog

    用法 git reflog 显示整个本地仓储的commit, 包括所有branch的commit, 甚至包括已经撤销的commit, 只要HEAD发生了变化, 就会在reflog里面看得到. git ...

  3. 【C++】递增递减操作符与指针的关系

    可以将递增与递减操作符用于指针和基本变量,将递增操作符用于指针时,将把指针的值增加其指向的数据类型占用的字节数,这种规则适用于对指针递增和递减. int arr[5] = {21,32,23,45,3 ...

  4. 外网主机访问虚拟机下的web服务器(NAT端口转发)

    主机:系统win7,ip地址172.18.186.210 虚拟机:VMware Workstation 7,虚拟机下安装了Centos操作系统,ip地址是192.168.202.128,部署了LAMP ...

  5. qt 的简介与使用

    1.图形类的构造,都是通过类的构造函数以及界面初始化这两部分 2.在qtcreator的界面编辑器通过“提升类”的方法,要确定头文件的路径是否正确 3.点击窗口关闭时,销毁窗口内容时,设置属性-> ...

  6. 计算字符数组长度,用strlen 与 sizeof 的原理与区别

    遇到个坑,定义了一个字符数组 unsigned ;i<;i++) { buff[i] = ; } 然后用串口发送函数: write(fd, buff, strlen(buff)); 却发现串口一 ...

  7. ORACLE 数据库建了非法表后无法操作和删除问题

    问题描述: oracle 用PL/SQL DEVELOPER 可视化建表时,表名没有按照规范,建立一个非法格式的表 ICD-10th-Version (中间有横杆,非法).但是不知道怎么回事却建成功了 ...

  8. 【转】关于URL编码/javascript/js url 编码/url的三个js编码函数

    来源:http://www.cnblogs.com/huzi007/p/4174519.html 关于URL编码/javascript/js url 编码/url的三个js编码函数escape(),e ...

  9. Java开源安全框架之Apache Shiro

    APACHE SHIRO安全框架 1      背景 Shiro项目始于2003年初,当时它叫JSecurity项目,当时对于Java应用开发人员没有太多的安全替代方案,始终被一个叫JAAS(Java ...

  10. 我的Java书单之优秀的入门书

    我始终相信,学习任何一门新技术,该技术相关的优秀书籍总是最好的资料.当然了,优秀的视频教程能帮组你快速地了解该技术,但是要深入和系统地去学习该技术,好的书籍就显得尤为重要了.结合我自己学习java的经 ...