python 第二天
list,tuple,dict,set
list,tuple,dict,set 是今天学习的四种 Python 内置类型
list
list 即数组,有序的集合,可以使用索引的方式来访问 list 的元素,通过索引也可以对 list 元素的值直接进行更改
animal = ['cat','dog','monkey']
print(animal[1])
print(animal[-1])
# 替换
animal[2] = ['pig','monkey']
# list 内部可以包含list
print(animal)
len() 函数
len() 函数可以返回数组的长度
print(len(animal))
append(),insert(),pop() 方法
# 末尾添加
animal.append('bird')
print(animal)
# 插入指定位置
animal.insert(1,'pig')
print(animal)
# 末尾删除
animal.pop()
print(animal)
# 删除指定位置
animal.pop(1)
print(animal)
tuple
tuple 元组,初始化后则不可变,访问也是通过索引访问。tuple 是有序,不可变的集合,也就是不可变的数组,用 "()" 来表示
# 元组 tuple 初始化 则不可变(内存指向不变)
newTuple = ('qiqi','girl')
# 仅包含 1 的时候定义方式如下
onlyOne = (1,)
# 访问
print(newTuple[0])
# len() 函数
print(len(newTuple))
dict
dict 就像是 js 中的对象,由 key 和 value 组成的,无序集合,优点是查询速度快,缺点是占用空间大
# 初始化
d = {"name":"qiqi","sex":"girl","rel":"my beaut friend","knowYears":[2015,2016,2017]}
# 访问
print(d["name"])
# 可以通过 key 值对 dict 进行更改
d["knowYears"].append(2018)
print(d)
in 操作符
in 操作符可以判断dict 中是否存在某个 key ,并返回布尔值
print("name" in d)
get() 和 pop() 方法
get() 方法可以获取 dict 中某个元素并返回其 value 值,如果不存在则返回 None 或者 自己指定的 value
print(d.get('girlFriend','不存在的'))
pop() 方法可以删除某个 key 值的元素
d.pop('rel')
print(d)
set
set() 函数
set 是只存储 key 值,不存储 value 的 dict 。它也是无序的集合。又因为 key 值是不能重复的,所以 set 是无序 无重复的集合。
创建 set ,需要利用 set() 函数,并输入一个 list。
n = [1,2,22,2,3,5,5,7,7,8,9]
s = set(n)
print(s)
add() 和 remove() 方法
set 具有add() 和 remove() 两个方法
s.add(55)
print(s)
set 的交集与并集
set 可以做交集与并集等操作
s1 = set([1,2,3,4,5,'qiqi'])
s2 = set(['qiqi',6,7,8,9,10])
# 交集 {"qiqi"}
print(s1 & s2)
# 并集 {1,2,3,4,5,'qiqi',6,7,8,9,10}
print(s1 | s2)
判断与循环
if_elif_else 语句
if...elif...else 可以实现判断语法,要注意的是 if...elif...else 仅仅执行第一个为 true 值判断
num = input('请输入任意大于0小于100的数字:')
# str 转 int
num = int(num)
# if elif else 仅仅执行第一个为 true 值判断
if num < 0:
print('你在逗我吗?这个不大于0!')
elif num > 100:
print('你在逗我吗?这个大于100!')
elif num > 49:
print('这个数字比49大!')
else:
print('这个数字比50小!')
# 简写的if 语句
x = input('输入任意非零数字!')
x = int(x)
if x:
print('非零数字')
else:
print('想骗我!!这就是0!')
循环
循环有两种方式: while 语句和 for...in 语句
numbers1 = []
n = 100
while n >= 0:
numbers1.append(n)
n = n - 2
print(numbers1)
# range() 函数生成 0 - 100 ,list() 函数变为数组
numbers2 = list(range(101))
print(numbers2)
sumAll = 0
for num in numbers1:
sumAll = sumAll + num
print(sumAll)
range() 函数
range() 函数可以生产整数数列,通过 list() 函数可以转换成数组
# 0 - 10
print(list(range(11)))
# 10 - 20
print(list(range(10,21)))
break 和 continue 关键字
这两个关键字可以跳出循环,break 会终止循环,continue 则仅仅跳过当前项
python 第二天的更多相关文章
- selenium webdriver (python) 第二版
前言 对于大多软件测试人员来讲缺乏编程经验(指项目开发经验,大学的C 语言算很基础的编程知识)一直是难以逾越的鸿沟,并不是说测试比开发人员智商低,是国内的大多测试岗位是功能测试为主,在工作时间中,我们 ...
- 简学Python第二章__巧学数据结构文件操作
#cnblogs_post_body h2 { background: linear-gradient(to bottom, #18c0ff 0%,#0c7eff 100%); color: #fff ...
- Python第二十四天 binascii模块
Python第二十四天 binascii模块 binascii用来进行进制和字符串之间的转换 import binascii s = 'abcde' h = binascii.b2a_hex(s) # ...
- Python第二十二天 stat模块 os.chmod方法 os.stat方法 pwd grp模块
Python第二十二天 stat模块 os.chmod方法 os.stat方法 pwd grp模块 stat模块描述了os.stat(filename)返回的文件属性列表中各值的意义,根据 ...
- Python第二十六天 python装饰器
Python第二十六天 python装饰器 装饰器Python 2.4 开始提供了装饰器( decorator ),装饰器作为修改函数的一种便捷方式,为工程师编写程序提供了便利性和灵活性装饰器本质上就 ...
- Python第二天 变量 运算符与表达式 input()与raw_input()区别 字符编码 python转义符 字符串格式化 format函数字符串格式化 帮助
Python第二天 变量 运算符与表达式 input()与raw_input()区别 字符编码 python转义符 字符串格式化 format函数字符串格式化 帮助 目录 Pychar ...
- python第二十九课——文件读写(复制文件)
自定义函数:实现文件复制操作有形参(2个) 没有返回值相似版(不用) def copyFile(src,dest): #1.打开两个文件:1个关联读操作,1个关联写操作 fr=open(src,'rb ...
- python第二十九课——文件读写(读取读取中文字符)
演示:读取中文字符 结论: 1).如果不设置encoding,默认使用gbk进行编解码 2).如果编码和解码不一致,最终导致报错,但是一旦设置了errors='ingore',那么就不会报错,而采取乱 ...
- 孤荷凌寒自学python第二十九天python的datetime.time模块
孤荷凌寒自学python第二十九天python的datetime.time模块 (完整学习过程屏幕记录视频地址在文末,手写笔记在文末) datetime.time模块是专门用来表示纯时间部分的类. ...
- 孤荷凌寒自学python第二十八天python的datetime.date模块
孤荷凌寒自学python第二十八天python的datetime.date模块 (完整学习过程屏幕记录视频地址在文末,手写笔记在文末) 一.toordinal() 此方法将访问从公元1年1月1日至当 ...
随机推荐
- Vijos 1006 晴天小猪历险记之Hill 单源单汇最短路
背景 在很久很久以前,有一个动物村庄,那里是猪的乐园(^_^),村民们勤劳.勇敢.善良.团结-- 不过有一天,最小的小小猪生病了,而这种病是极其罕见的,因此大家都没有储存这种药物.所以晴天小猪自告奋勇 ...
- Hadoop启动方式
启动方式 1.逐一启动 hdfs hadoop-daemon.sh start|stop namenode|datanode|secondrynamenode yarn yarn-daemon.sh ...
- 关于locals()、globals()以及作用域的一些感悟
示例代码 i=6def foo(): print locals() print globals() i=66 print locals() print globals()class demo: i=6 ...
- 禁用Ubuntu 15.04登录界面显示客人会话
在控制台打开如下配置文件,如果没有就自己创建一个: sudo vi /etc/lightdm/lightdm.conf 向文件中添加如下内容: [SeatDefaults] greeter-sessi ...
- 20170717_python_爬虫_网页数据解析_BeautifulSoup_数据保存_pymysql
上午废了老大劲成功登陆后,下午看了下BeautifulSoup和pymysql,晚上记录一下 自己电脑装的sublime,字体颜色竟然拷贝不下来 - - 写的过程中遇到了很多问题: 1.模拟登陆部分 ...
- 51nod_1384:全排列(STL)
题目链接 记住next_permutation函数的用法,另外string在这里比char[]慢好多啊.. //#include<bits/stdc++.h> //using namesp ...
- nyoj_14:会场安排问题
一道很经典的贪心问题 题目链接: http://acm.nyist.net/JudgeOnline/problem.php?pid=14 #include<iostream> #inclu ...
- Effective Objective-C 2.0 Tips 总结 Chapter 3 & Chapter 4
Chapter 3 接口与 API 设计 Tips 15 使用前缀避免明明空间冲突 Objective-C 没有命名空间,所以我们在起名时要设法避免命名冲突 避免命名冲突的方法就是使用前缀 应用中的所 ...
- luogu P2756 飞行员配对方案问题
题目链接:P2756 飞行员配对方案问题 题目描述 英国皇家空军从沦陷国征募了大量外籍飞行员.由皇家空军派出的每一架飞机都需要配备在航行技能和语言上能互相配合的2 名飞行员,其中1 名是英国飞行员,另 ...
- if __name__ == '__main__' 如何正确理解
今天有个初学Python 的朋友问我这个问题,他说在网上好多回答他都不太理解.所以这里我来做说一下,希望能把这个问题说明白. 先举一个例子:假设我们有一个add.py文件,里面的代码是这样: def ...