记录在北京达内学Python-day07

(2018-05-10 22:21:12)

day06回顾

list 列表

in / not in 运算符

索引取值

索引赋值

切片取值

切片赋值

del 语句用于列表

del 变量

del 列表[索引/切片]

序列相关的函数:

len(x)

max(x)

min(x)

sum(x)

any(x)

all(x)

列表的方法:

L.append(x)

L.insert(index, value)

L.clear()

L.count(v)

L.copy()

L.remove(v)

L.pop(index)

L.sort(reverse=False)

L.extend()

深拷贝 和 浅拷贝

copy.deepcopy

L.copy()

L2 = L

字符串方法:

S.split(sep=None)

S.join(序列)

列表推导式

[表达式 for 变量 in 可迭代对象 if 真值表达式]

day07笔记:

元组 tuple

元组是不可改变的序列,同list一样,元组可以存放任意类型的元素,一但元组生成,则它不可以改变

元组的表示方式

用小括号()括起来,单个元素括起来用逗号(,)区分是单个对象还是元组

创建空元组的字符值

t = ()

创建非空元组的字面值

t = 200,

t = (20,)

t = (1,2,3)

t = 100, 200, 300

元组的错误示例:

t = (20) # t 绑定整数

x, y, z = 100, 200, 300 # 序列赋值

x, y, z = 'ABC'

x, y, z = [10, 20, 30]

元组的构造函数 tuple

tuple() 生成一个空的元组,等同于()

tuple(iterable) 用可迭代对象生成一个元组

示例:

t = tuple()

t = tuple(range(10))

t = tuple('hello')

t = tuple([1,2,3,4])

元组的算术运算:

+ += * *=

用法与列表的用法完全相同

元组的比较运算:

< <= > >= == !=

规则与列表完全相同

in/ not in

索引取值

切片取值

规则与列表完全相同

区别:

元组是不可变对象,不支持索引赋值和切片赋值

元组的方法:

见: >>> help(tuple)

T.index(v[,begin[,end]]) 用于获取元组中v所在的索引位置

T.count(v) 用于获取元组中v的个数

(以上方法同list中的index,count方法)

可以用于序列的函数:

len, max, min, sum, all, any

三个构造函数:

str(obj)

list(iterable)

tuple(iterable)

用于创建相应的对象

其它函数:

reversed(seq) 返回反向顺序的可迭代对象

sorted(iterable, reversed=False) 返回已排序的列表

示例:

for x in reversed("ABCD"):

print(x) # D C B A

L = [8, 6, 3, 5, 7]

L2 = sorted(L)

print(L2) # [3, 5, 6, 7, 8]

L3 = sorted(L, reversed=True)

print(L3) # [8, 7, 6, 5, 3]

print(L) # 保持不变

字典 dict

1. 字典是一种可变的容器,可以存储任意类型的数据

2. 字典中的每个数据都是用'键'(key) 进行索引,而不像序列可以用下标来进行索引

3. 字典的数据没有先后顺序关系,字典的存储是无序的

4. 字典中的数据以键(key)-值(value)对进行映射存储

5. 字典的键不能重复,且只能用不可变类型作为字典的键。

字典的字面值表示方式:

用 {} 括起来,以冒号(:) 分隔键-值对, 各键值对用分号分隔开

创建空字典

d = {}

创建非空的字典:

d = {'name': 'tarena', 'age': 15}

d = {'姓名': '小张'}

d = {1:'壹', 2:'贰'}

字典的构造函数 dict

dict() 创建一个空字典,等同于 {}

dict(iterable) 用可迭代对象初始化一个字典

dict(**kwargs) 关键字传参形式生成一个字典

示例:

d = dict()

d = dict([('name', 'tarena'), ('age',15)])

d = dict(name='tarena', age=15)

不可变类型:

int,float,complex,bool,str,tuple,frozenset(固定集合), bytes(字节串)(后面会讲)

可变类型:

list, dict, set(集合), bytearray(字节数组)

字典的键索引

用[] 运算符可以获取字典内'键'所对应的'值'

语法:

字典[键]

获取数据元素

d = dict(name='tarena', age=15)

print(d['age']) # 15

添加/修改字典元素

字典[键] = 表达式

示例:

d = {}

d['name'] = 'tarena' # 创建一个新的键值对

d['age'] = 15 # 创建键值对

d['age'] = 16 # 修改键值对

del 语句删除字典的元素

语法:

del 字典[键]

示例:

d = {'name': 'china', 'pos': 'asia'}

del d['pos']

print(d)

del d['name']

print(d) # {}

字典的 in / not in 运算符

可以用 in 运算符来判断一个'键'是否存在于字典中,如果存在则返回True, 否则返回False

not in 与 in 返回值相反

示例:

d = {'a': 1, 'b': 2}

'a' in d # True

1 in d # False

100 not in d # True

2 not in d # True

字典的迭代访问:

字典是可迭代对象,字典只能对键进行迭代访问

d = {'name': 'tarena', (2002, 1, 1): '生日'}

for x in d:

print(x)

可以用于字典的内建函数

len(x) 返回字典键-值对的个数

max(x) 返回字典的键的最大值

min(x) 返回字典的键的最小值

sum(x) 返回字典所有键的和

any(x) 真值测试,只对键测试,如果其中一个键为True,结果为True

all(x) 真值测试,全部键为True时,结果才为True

字典的方法:

见: python_base_docs_html/dict.html

练习:

写程序,实现以下需求:

将如下数据形成一个字典seasons

'键' '值'

1 '春季有1,2,3月'

2 '夏季有4,5,6月'

3 '秋季有7,8,9月'

4 '冬季有10,11,12月'

让用户输入一个整数代表这个季度,打印这个季度的信息,如果用户输入的信息不在字典的键内,则打印信息不存在

练习:

写程序,输入一段字符串,打印出这个字符串中出现过的字符及出现过的次数:

如:

输入: ABCDABCABA

输出:

A : 4次

C : 2次

B : 3次

D : 1次

注: 不要求打印的顺序

字典推导式

字典推导式是用可迭代对象依次生成字典内元素的表达式

语法:

{键表达式 : 值表达式 for 变量 in 可迭代对象 [if 真值表达式]}

注: []的内容代表可省略

示例:

d = {x : x**2 for x in range(10)}

练习:

1. 有字符串列表如下:

L = ['tarena', 'xiaozhang', 'xiaowang']

生成如下字典:

d = {'tarena': 6, 'xiaozhang': 9, 'xiaowang': 8}

注: 字典的值是键的长度

2. 编号列表如下:

Nos = [1001, 1002, 1003, 1004]

names = ['Tom', 'Jerry', 'Spike', 'Tyke']

生成用Nos数据为键,以names为值的字典,如下:

{1001: 'Tom', 1002: 'Jerry', ......}

练习:

1. 写一个程序,输入一些单词和解释,将单词作为键,将解释作为值,将这些数据存入字典中.

然后:

输入查询的单词,显示出此单词的解释

2. 学生管理项目准备工作:

写一个程序,任意输入n个学生的信息,形成字典后存于列表中:

学生的信息包括:

姓名(字符串)

年龄(整数)

成绩(整数)

循环输入学生信息,直到输入学生姓名为空时结束输入,

最后形成字典列表如下:

L = [

{'name':'xiaozhang', 'age':20, 'score': 100},

{'name':'xiaoli', 'age':21, 'score': 98},

{'name':'xiaowang', 'age':19, 'score': 89},

...

]

2) 将以上列表显示为如下的表格:

+------------+------+-------+

| name | age | score |

+------------+------+-------+

| xiaozhang | 20 | 100 |

| xiaoli | 21 | 98 |

| xiaowang | 19 | 89 |

+------------+------+-------+

分享:

喜欢

0

赠金笔

加载中,请稍候......

评论加载中,请稍候...

发评论

登录名: 密码: 找回密码 注册记住登录状态

昵   称:

评论并转载此博文

发评论

以上网友发言只代表其个人观点,不代表新浪网的观点或立场。

北京达内python价格_记录在北京达内学Python-day07相关推荐

  1. 达内python怎么样_在达内学Python怎么样?我能学会吗?

    在达内学Python怎么样?老师负责吗?能学会吗?下面和达内北京IT培训机构一起来看看吧! "我,27岁,没有存款" "我月薪两万,吃不起20块钱的盒饭" &q ...

  2. python爬虫实例-记录一次简单的Python爬虫实例

    本次的这篇文章主要是和大家分享了一篇关于记录一次简单的Python爬虫实例 ,有需要的小伙伴可以看一下. 主要流程分为: 爬取.整理.存储 1.其中用到几个包,包括 requests 用于向网站发送请 ...

  3. flask执行python脚本_如何在Flask中运行python脚本

    我有一个Flask脚本,可以创建网站并动态打印一些数据.-打印的数据应来自另一个python脚本. 我目前面临的问题是,如果我将执行python脚本的行放在执行Flask应用程序的行之前,它将运行Py ...

  4. php运行python爬虫_群晖系统中运行python爬虫程序

    重要:本文最后更新于2021-01-28 17:02:43,某些文章具有时效性,若有错误或已失效,请在下方留言或联系代码狗. 准备入手一台NAS,事先的学习是必须的,今天在VM虚拟机中安装好NAS后, ...

  5. 苹果系统安装python环境_如何在mac下配置python虚拟环境

    安装python虚拟环境核心目的就是为了复制一个python环境,这样新项目下载的所有包,都会存放在虚拟环境下的python site-package 中 首先安装 1. sudo pip insta ...

  6. ai python 面试_面试分享系列 | 17道Python面试题,让你在求职中无往不利

    今天给大家分享的是Python面试题系列的第一篇文章,后续我也会陆续整理Python相关的问题给大家,无论是求职者还是新人都可以通过面试题来考察自己的能力缺陷. 1.Python中pass语句的作用是 ...

  7. 量化投资与python语言_在量化投资领域,为什么Python如此受欢迎?

    说起Web领域 你立马会想到JavaScript语言,它在Web领域不可撼动:Python也已经在金融量化投资领域占据了重要位置,从各个业务链条都能找到相应的框架实现. 在量化投资(证券和比特币)开源 ...

  8. 小猿圈python视频_小猿圈分享学习Python的最佳方式

    原标题:小猿圈分享学习Python的最佳方式 python现在是世界上功能最多的编程语言之一,可以是用Python编辑应用程序,游戏.算法程序.还可以编程一个机器人,学习Python可以担任软件工程师 ...

  9. 下载anaconda前需要卸载python吗_装了anaconda要卸载python吗

    装了anaconda其实是可以选择卸载python,当然也可以不卸载.Anaconda 是Python的一个发行版,里面内置了很多工具,不用单独安装,因为做了优化也免去了单独安装带来的一些麻烦. An ...

最新文章

  1. Android动态加载jar/dex
  2. C#中运行命令行截取输出流的例子
  3. 最小生成树之克鲁斯卡尔(Kruskal)算法
  4. which和whereis
  5. android uri 电话号码,android 跳转通讯录 Android跳转到通讯录获取用户名称和手机号码的实现思路...
  6. Python自动化测试的学习笔记
  7. python教程推荐-关于推荐系统的详细介绍
  8. Excel文件输出到浏览器
  9. 创建专属聊天室练习(客户端与服务端通信|客户端界面交互)
  10. 十二 iOS之 折叠图片
  11. 用BitBlt实现透明贴图
  12. 默克尔树 Merkle树之Go语言实现
  13. 非常实用的电脑壁纸软件和任务栏透明
  14. 中学生学科学习能力测评
  15. css3的书本翻页效果
  16. 声音驱动提示不完整或已损坏 (代码 19)
  17. C++教程网之Linux网络编程视频 Unix网络编程视频
  18. FPS游戏初开发--逻辑分析总结
  19. 手机小技巧:安卓微信聊天记录怎么备份?
  20. IT 运维监控场景中的故障预警及处理

热门文章

  1. apacheBench对网站进行压力测试
  2. 加密解密概述及openssl应用及其创建CA和签发证书的实现
  3. oracle10g rac升级到10.2.0.5
  4. 关于Orchard CMS
  5. 程序员平均月薪过万,想当程序员的话,大学学那些专业会更好呢?
  6. 连数据都读不懂,你凭什么说会数据分析?
  7. SEO人生衔接后用户可随时随地同他的合作伙伴协同工作
  8. 分别标记区段的 飞鸽传书 左、右端
  9. 深入探讨MFC消息循环和消息泵(一)
  10. Python爬虫——爬取Python岗位的那些事