list,tuple,dict,set

list,tuple,dict,set 是今天学习的四种 Python 内置类型

list

list 即数组,有序的集合,可以使用索引的方式来访问 list 的元素,通过索引也可以对 list 元素的值直接进行更改

  1. animal = ['cat','dog','monkey']
  2. print(animal[1])
  3. print(animal[-1])
  4. # 替换
  5. animal[2] = ['pig','monkey']
  6. # list 内部可以包含list
  7. print(animal)
len() 函数

len() 函数可以返回数组的长度

  1. print(len(animal))
append(),insert(),pop() 方法
  1. # 末尾添加
  2. animal.append('bird')
  3. print(animal)
  4. # 插入指定位置
  5. animal.insert(1,'pig')
  6. print(animal)
  7. # 末尾删除
  8. animal.pop()
  9. print(animal)
  10. # 删除指定位置
  11. animal.pop(1)
  12. print(animal)

tuple

tuple 元组,初始化后则不可变,访问也是通过索引访问。tuple 是有序,不可变的集合,也就是不可变的数组,用 "()" 来表示

  1. # 元组 tuple 初始化 则不可变(内存指向不变)
  2. newTuple = ('qiqi','girl')
  3. # 仅包含 1 的时候定义方式如下
  4. onlyOne = (1,)
  5. # 访问
  6. print(newTuple[0])
  7. # len() 函数
  8. print(len(newTuple))

dict

dict 就像是 js 中的对象,由 key 和 value 组成的,无序集合,优点是查询速度快,缺点是占用空间大

  1. # 初始化
  2. d = {"name":"qiqi","sex":"girl","rel":"my beaut friend","knowYears":[2015,2016,2017]}
  3. # 访问
  4. print(d["name"])
  5. # 可以通过 key 值对 dict 进行更改
  6. d["knowYears"].append(2018)
  7. print(d)
in 操作符

in 操作符可以判断dict 中是否存在某个 key ,并返回布尔值

  1. print("name" in d)
get() 和 pop() 方法

get() 方法可以获取 dict 中某个元素并返回其 value 值,如果不存在则返回 None 或者 自己指定的 value

  1. print(d.get('girlFriend','不存在的'))

pop() 方法可以删除某个 key 值的元素

  1. d.pop('rel')
  2. print(d)

set

set() 函数

set 是只存储 key 值,不存储 value 的 dict 。它也是无序的集合。又因为 key 值是不能重复的,所以 set 是无序 无重复的集合。

创建 set ,需要利用 set() 函数,并输入一个 list。

  1. n = [1,2,22,2,3,5,5,7,7,8,9]
  2. s = set(n)
  3. print(s)
add() 和 remove() 方法

set 具有add() 和 remove() 两个方法

  1. s.add(55)
  2. print(s)
set 的交集与并集

set 可以做交集与并集等操作

  1. s1 = set([1,2,3,4,5,'qiqi'])
  2. s2 = set(['qiqi',6,7,8,9,10])
  3. # 交集 {"qiqi"}
  4. print(s1 & s2)
  5. # 并集 {1,2,3,4,5,'qiqi',6,7,8,9,10}
  6. print(s1 | s2)

判断与循环

if_elif_else 语句

if...elif...else 可以实现判断语法,要注意的是 if...elif...else 仅仅执行第一个为 true 值判断

  1. num = input('请输入任意大于0小于100的数字:')
  2. # str 转 int
  3. num = int(num)
  4. # if elif else 仅仅执行第一个为 true 值判断
  5. if num < 0:
  6. print('你在逗我吗?这个不大于0!')
  7. elif num > 100:
  8. print('你在逗我吗?这个大于100!')
  9. elif num > 49:
  10. print('这个数字比49大!')
  11. else:
  12. print('这个数字比50小!')
  13. # 简写的if 语句
  14. x = input('输入任意非零数字!')
  15. x = int(x)
  16. if x:
  17. print('非零数字')
  18. else:
  19. print('想骗我!!这就是0!')

循环

循环有两种方式: while 语句和 for...in 语句

numbers1 = []

n = 100

  1. while n >= 0:
  2. numbers1.append(n)
  3. n = n - 2
  4. print(numbers1)
  5. # range() 函数生成 0 - 100 ,list() 函数变为数组
  6. numbers2 = list(range(101))
  7. print(numbers2)
  8. sumAll = 0
  9. for num in numbers1:
  10. sumAll = sumAll + num
  11. print(sumAll)
range() 函数

range() 函数可以生产整数数列,通过 list() 函数可以转换成数组

  1. # 0 - 10
  2. print(list(range(11)))
  3. # 10 - 20
  4. print(list(range(10,21)))
break 和 continue 关键字

这两个关键字可以跳出循环,break 会终止循环,continue 则仅仅跳过当前项

python 第二天的更多相关文章

  1. selenium webdriver (python) 第二版

    前言 对于大多软件测试人员来讲缺乏编程经验(指项目开发经验,大学的C 语言算很基础的编程知识)一直是难以逾越的鸿沟,并不是说测试比开发人员智商低,是国内的大多测试岗位是功能测试为主,在工作时间中,我们 ...

  2. 简学Python第二章__巧学数据结构文件操作

    #cnblogs_post_body h2 { background: linear-gradient(to bottom, #18c0ff 0%,#0c7eff 100%); color: #fff ...

  3. Python第二十四天 binascii模块

    Python第二十四天 binascii模块 binascii用来进行进制和字符串之间的转换 import binascii s = 'abcde' h = binascii.b2a_hex(s) # ...

  4. Python第二十二天 stat模块 os.chmod方法 os.stat方法 pwd grp模块

    Python第二十二天   stat模块  os.chmod方法  os.stat方法  pwd  grp模块 stat模块描述了os.stat(filename)返回的文件属性列表中各值的意义,根据 ...

  5. Python第二十六天 python装饰器

    Python第二十六天 python装饰器 装饰器Python 2.4 开始提供了装饰器( decorator ),装饰器作为修改函数的一种便捷方式,为工程师编写程序提供了便利性和灵活性装饰器本质上就 ...

  6. Python第二天 变量 运算符与表达式 input()与raw_input()区别 字符编码 python转义符 字符串格式化 format函数字符串格式化 帮助

    Python第二天  变量  运算符与表达式  input()与raw_input()区别  字符编码  python转义符  字符串格式化  format函数字符串格式化  帮助 目录 Pychar ...

  7. python第二十九课——文件读写(复制文件)

    自定义函数:实现文件复制操作有形参(2个) 没有返回值相似版(不用) def copyFile(src,dest): #1.打开两个文件:1个关联读操作,1个关联写操作 fr=open(src,'rb ...

  8. python第二十九课——文件读写(读取读取中文字符)

    演示:读取中文字符 结论: 1).如果不设置encoding,默认使用gbk进行编解码 2).如果编码和解码不一致,最终导致报错,但是一旦设置了errors='ingore',那么就不会报错,而采取乱 ...

  9. 孤荷凌寒自学python第二十九天python的datetime.time模块

     孤荷凌寒自学python第二十九天python的datetime.time模块 (完整学习过程屏幕记录视频地址在文末,手写笔记在文末) datetime.time模块是专门用来表示纯时间部分的类. ...

  10. 孤荷凌寒自学python第二十八天python的datetime.date模块

     孤荷凌寒自学python第二十八天python的datetime.date模块 (完整学习过程屏幕记录视频地址在文末,手写笔记在文末) 一.toordinal() 此方法将访问从公元1年1月1日至当 ...

随机推荐

  1. Photoshop制作雪碧图技巧

    雪碧图,就是将网页制作中使用的多个小图片合并成一个图片,使用css技术将这张合成的图片应用在网页不同的地方. 雪碧图可以减少网页加载时的http请求数,优化网页性能. 步骤: a.使用Photosho ...

  2. CodeM美团点评编程大赛复赛 做题感悟&题解

    [T1] [简要题意]   长度为N的括号序列,随机确定括号的方向:对于一个已确定的序列,每次消除相邻的左右括号(右左不行),消除后可以进一步合并和消除直到不能消为止.求剩下的括号的期望.\(N \l ...

  3. 从零搭建DotnetCore2.0

    右键解决方案>新建项目> 选择Web>ASP.NETCoreWeb应用程序(.NET Core) 选择Web应用程序,暂时不选择启用Docker,身份验证选择个人用户账户(会自动生成 ...

  4. MySQL常用基本命令

    启动MySQL /etc/init.d/mysqld start 优雅的关闭数据库的方法 1:使用MySQLadmin mysqladmin -uroot -p123456 shutdown 2:使用 ...

  5. 解决React Native unable to load script from assets index.android.bundle on windows

    React Native运行的时候,经常碰到React Native unable to load script from assets index.android.bundle on windows ...

  6. 基于android的语音质量评估

    最近研究如何通过android评估通话质量,希望获取的参数有:(1)接通时长 (2)掉话次数 (3)语音是否清晰,以下将给出接通时长和掉话次数的详细定义: 接通时长:通话一方开始拨号到另一方开始振铃的 ...

  7. mongodb中limit与skip方法

    Mongodb Limit()方法 如果需要在mongodb中获取指定数量的数据记录,这时候就要用到limit()方法,该方法需要接收一个数字参数 基本语法:  DB.COLLECTION_NAME. ...

  8. 第一章之s5pv210启动顺序

    我所使用的开发板是:友善之臂smart210,cpu为s5pv210.u-boot版本是:u-boot-2012-10 1,首先在u-boot中配置相对应的开发板的配置文件 #make s5p_gon ...

  9. Java 9 揭秘(19. 平台和JVM日志)

    Tips 做一个终身学习的人. 在这章中,主要介绍以下内容: 新的平台日志(logging)API JVM日志的命令行选项 JDK 9已经对平台类(JDK类)和JVM组件的日志系统进行了大整. 有一个 ...

  10. Apache Kafka - 介绍

    原文地址地址: http://blogxinxiucan.sh1.newtouch.com/2017/07/12/Apache-Kafka-介绍/ Apache Kafka教程 之 Apache Ka ...