Python小白的进阶之路---Day3


参考链接:
https://study.163.com/course/courseLearn.htm?courseId=378003#/learn/video?lessonId=745183&courseId=378003
https://blog.csdn.net/Yort2016/article/details/71159951
https://blog.csdn.net/qq_29768491/article/details/79678535
https://blog.csdn.net/dujiahei/article/details/87890767

1.dict字典

1.1 字典的定义

   字典是Python中唯一的映射类型,映射是数学上的一个术语,指两个元素集 之间元素相互“对应”的关系。映射类型区别于序列类型,序列类型以数组的形式存储,通过索引的方式来获取相应位置的值,一般索引值与对应位置存储的数据是毫无关系的。字典跟序列不同,序列讲究顺序,字典讲究映射,不讲究顺序。字典也被称作关联数组或哈希表。

1.2 字典的创建方法

   字典有自己的标志性符号,就是用大括号{}定义。字典由键(key)和对应的值(value)共同构成,每一对键值组合称之为项。如:

>>> dict1={1:'one',2:'two',3:'three'}
>>> dict1
{1: 'one', 2: 'two', 3: 'three'}
>>> print(dict1[2])
two

   注意字典的键必须是独一无二的,而值可以取任何数据类型,但必须是不可变的(如字符串、数或元祖)。
   我们也可以用dict()来创建字典。

>>> dict1=dict(((1,'one'),(2,'two'),(3,'three')))
>>> dict1
{1: 'one', 2: 'two', 3: 'three'}

  还有一种方法是直接给字典的键复制,如果键存在,则改写键对应的值;如果不存在。则创建一个新的值并赋值。

>>> dict1[5]='five'
>>> dict1
{1: 'one', 2: 'two', 3: 'three', 5: 'five'}

1.3 字典的各种内置方法

(1)fromkeys()
  该方法用于创建并返回一个新的字典,它有两个参数:第一个参数是字典的见;第二个参数是可选的,是传入键的值。如果不提供,那么默认是None。

>>> dirt1={}
>>> dirt1.fromkeys((1,2,3),'number')
{1: 'number', 2: 'number', 3: 'number'}
>>> dirt1.fromkeys((1,2,3),('one','two','three'))
{1: ('one', 'two', 'three'), 2: ('one', 'two', 'three'), 3: ('one', 'two', 'three')}

(2) keys()values()items()
  访问字典的方法有上面三种 。key()用于返回字典中的键,value()用于返回字典中的值,items()用于返回字典中的项。

>>> dict1=dict1.fromkeys((1,2,3,4,5),'number')
>>> dict1.keys()
dict_keys([1, 2, 3, 4, 5])
>>> dict1.values()
dict_values(['number', 'number', 'number', 'number', 'number'])
>>> dict1.items()
dict_items([(1, 'number'), (2, 'number'), (3, 'number'), (4, 'number'), (5, 'number')])

(3) get()setdefault()
  get()这种方法提供了更宽松的方式去访问字典项,当键不存在的时候,get()方法并不会报错,只是默默地返回了一个None,表示什么都没有找到。
  setdefault()在字典找不到相应的键时会自动添加。

>>> a={1:'one',2:'two',3:'three'}
>>> a.get(6)
>
>>> a.setdefault(4)
>>> a
{1: 'one', 2: 'two', 3: 'three', 4: None}

  如果希望找不到数据时返回指定的值,那么可以在get()第二个参数设置的时候对应默认的默认返回值。

>>> dict1.get(7,'new')
'new'

  如果不知道一个键是否在字典中,那么可以使用成员操作符(in或not in)来判断。

(4) clear():该方法用于清空字典。使用变量名赋值为一个空字典的方法存在一些弊端,所以推荐的做法是用clear().

(5) copy():用来复制字典。

(6) pop()popitem()
  pop()是给定键弹出对应的值,而popitem()是弹出一个项,弹出的项是随机的。

(7) update() :更新字典。

>>> a={1:'one',2:'two',3:'three'}
>>> b={3:'三'}
>>> a.update(b)
>>> a
{1: 'one', 2: 'two', 3: '三'}

2.集合----“字典的表亲”

2.1集合的特性

集合是一个无序的,不重复的数据组合。 集合的应用场景主要有:

  • 列表去重
  • 关系测试:如交集、差集、并集的关系测试

2.2集合的创建方法

  创建集合有两种方法:一种是直接把一堆元素用大括号{}括起来;另一种是用set()。但由于set()创造了的集合内部是无序的,所以如果关注列表元素的前后顺序问题,使用set()这个函数就要提高警惕啦。

set1={1,2,3,4}
set2=set([1,2,3,4])
set1==set2
True

2.3集合的各种内置方法

集合的所有内置方法:
在这里插入图片描述

3.判断语句(要求掌握多条件判断)

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

4.三目表达式

python中的格式:
为真时的结果 if 判定条件 else 为假时的结果 它是先输出结果,再判定条件 。如下面的实例:输出1,如果5大于3,否则输出0。

>>> print(1 if 5>3 else 0)
1

5.循环语句

  • for...in 循环:
    for…in循环,依次把list或tuple中的每个元素迭代出来;
    for x in …循环:就是把每个元素代入变量x,然后执行缩进块的语句。
    如果循环的变量是比较大的范围,可以借助range() 生成一个整数序列,再通过list()函数转换为list。​
  • while 循环
    只要条件满足,就不断循环,条件不满足时退出循环。
    在循环内部变量n不断自减,直到变为-1时,不再满足while条件,循环退出。
  • break
    在循环中,break语句的作用是终止当前循环,跳出循环体。
    break的作用是提前结束循环。​
  • continue
    在循环过程中,也可以通过continue语句,跳过当前的这次循环,直接开始下一次循环。
    continue的作用是提前结束本轮循环,并直接开始下一轮循环。​

小结:
  循环是让计算机做重复任务的有效的方法。
  break语句可以在循环过程中直接退出循环,而continue语句可以提前结束本轮循环,并直接开始下一轮循环。这两个语句通常都必须配合if语句使用。
  要特别注意,不要滥用break和continue语句。break和continue会造成代码执行逻辑分叉过多,容易出错。大多数循环并不需要用到break和continue语句。
  有些时候,如果代码写得有问题,会让程序陷入“死循环”,也就是永远循环下去。这时可以用Ctrl+C退出程序,或者强制结束Python进程。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值