吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 1203|回复: 12
收起左侧

[学习记录] Python列表与字典的学习笔记

[复制链接]
Ssnakes 发表于 2022-10-18 18:26
学习记录~纯粹小白~每天进步一点点~与所有正在学习的人一起共勉~
  • 列表:
  • 为什么需要列表?
  • ·变量可以存储一个元素,列表可以存储N多个元素,程序可以方便的对这些数据进行整体操作;·列表相当于其他语言当中的 数组;·列表示意图: 倒序索引:-7        -6          -5       -4         -3        -2         -1
hello
world
123
98.6
world
125
world
←数据
  0         1           2       3          4         5         6正序索引:
  • 列表相关:
  • 列表的特点:①列表元素按顺序有序排序;②索引映射唯一个数据;③列表可以存储重复数据;④任意数据类型混存;⑤根据需要动态分配和回收内存。 2)列表的创建:①使用汇总括号“[ ]”;②调用内置函数list()③使用列表生成式,下2 2,列表生成式:语法格式:[i*n for i in range(a,b)] or [表达式 注意事项:“表示列表元素的表达式”中通常包含自定义变量。实例列举:
  • lst=[i*i for i range(1,10)]  输出结果:[1,4,9,16,25,36,49,64,81]
  • lst=[i*2 for i range(1,6)]  输出结果:[2,4,6,8,10]
  • 查询:
  • 查询元素索引:·调用方法 index()获取列表中指定元素的索引,若列表中存在若  干个相同元素,只返回相同元素中的第一个元素的索引;·若查询的元素在列表中不存在,则会输出ValueError;还可以在指定的startstop之间进行查找;
  • 获取单个元素:lst=lst[x],正向索引从0~N-1),例如:lst[0]逆向索引从-N-1,例如:lst[-N];指定索引不存在,则会抛出IndexErrorPrint(lst.index(hello,1,4))
  • 获取多个元素:语法格式:Lst[start:stop:step]说明:step默认步长为1start默认为1stop默认为1且遍历整个列表;若step为负数,则倒序输出;Print([x:y:z])
  • in / not in①判断指定元素在列表中是否存在:·元素 in 列表名(x in list);·元素 not in 列表名(x not in list);②列表元素遍历:·for 迭代变量 in 列表名;·print(x in lst);·print(x not in lst)
  • 列表的增、删、改:
  • 新增:①调用方法 append(),例如:lst.append(x)lst1.append(lst2)x为元素,lst2为列表在列表末尾添加一个元素;②调用方法 extend(),例如:lst.extend(a,b),在列表的末尾至少添加一个元素;③调用方法 insert(),例如:lst.insert(n,x)n为索引位置,x为插入的元素,在列表任意位置添加一个元素;④使用切片。
  • 删除:①调用方法 remove()list.remove(x)x为元素②调用方法 pop()list.pop(n)n为索引值,指定索引移除元素,不指定索引移除最后一个元素;③调用方法 clear()list.clear()print(list)④调用方法 deldel list⑤使用切片,new_list=list[a:z:n]astartzstopn为步长, new_list=list[1:3],使用切片会产生新的列表,若不想产生新的列表,而是删除原列表中的内容,可以如下操作:list[a:z:n]=[ ],(list[1:3]=[ ]print(list)
  • 修改:①使用索引,list[n]=xlist[2]=100n为索引值,x为替换元素②使用切片,list[a:z:n]=[b,c,d,e,f,...]list[1:3]=[300,400,500,600]astartzstopn为步长
  • 排序:①调用方法 sort(),列表中的所有元素默认按照从小到大的顺序进行排序,(默认是生序排序),可以 指定reverse=Ture/False(关键字参数),进行降序/升序排序;②调用内置函数 sorted()可以 指定reverse=Ture/False(关键字参数),进行降序/升序排序,原列表不发生改变,将产生一个新的列表;new_list=sorted(list)print(list)desc_list=sorted(list,reverse=Ture)print(list)
  • 字典
  • 字典:·Python内置的数据结构之一,与列表一样是一个可变序列;·以键值对的方式存储数据,字典是一个无序的序列;·字典:Scores={张三:100, 李四:98, 王五:79}字典名↑花括号↑ “”↑ 冒号:↑ 值↑ 逗号,·字典示意图:Hash(key4)                         Hash(key2)             Hash(key1)                         Hash(key3)  Hash(key5)
Key4Value4
Key2Value2
Key1Value1
Key3Value3
Key5Value1
Key(x)代表第几个放进字典当中的键,位置通过hash函数计算位置。可变序列:列表,字典。
  • 字典的创建:·最常用的方式:使用花括号{ }name={key1:value1,key2:value2,key4:value4,key3:value3,...}例如:Scores={张三:100, 李四:98, 王五:79}·使用内置函数dict()Dict(name=jack,age=25)·创建空字典:name={ }
  • 字典的常用操作:·字典中元素的获取:--[ ],例如:scores[张三--get()方法,例如:scores.get(张三)·[ ]取值与使用get()取值的区别:--get()方法取值,若字典中不存在指定的key,并不会抛出KeyError,而是返回None,可以通过参数设置默认的value,以便指定的key不存在时返回;·key的判断:--in,指定的key在字典中存在返回Ture--not in,指定的key在字典中不存在返回Ture·字典元素的删除:del scores[张三·字典元素的新增:Scores[jack]=90·获取字典视图的三个方法:--keys(),获取字典中所有key--values(),获取字典中所有value--items(),获取字典中所有key-value对;·字典元素的遍历:for item in ccores:Print(item)·字典的特点:--字典中所有元素都是一个key-value对,key不允许重复,value可以重复;--字典中的元素是无序的;--字典中的key必须是不可变对象;--字典也可以根据需要动态的伸缩;--字典会浪费较大的内存,是一种使用空间换时间的数据结构;·字典生成式:--
Items=[zhong,books,fruitsPrices=[96,78,85]
            
{zhong:96,books:78,fruits:85}
·内置函数zip()--用于将可迭代的对象作为参数,将对象中的元素打包成一个元组,然后返回由这些元组组成的列表;
Items=[zhong,books,fruitsPrices=[96,78,85]lst=zip(items,prices)Print(list(lst))
{item.upper():price for item,peice in zip(items,price)}

免费评分

参与人数 1吾爱币 +1 收起 理由
haoera + 1 额,头皮发麻

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

 楼主| Ssnakes 发表于 2022-10-18 18:28
学习笔记粘贴进来,没想到排版那么乱,让我好不尴尬~
xhily 发表于 2022-10-18 18:31
weiekko 发表于 2022-10-18 18:50
Ssnakes 发表于 2022-10-18 18:28
学习笔记粘贴进来,没想到排版那么乱,让我好不尴尬~

辣眼睛
咱好歹整理一下
caiduyi127 发表于 2022-10-18 20:00
排版乱了,不如直接发图片
dork 发表于 2022-10-18 20:32
这排版也是醉了。。。。。。。。。。。。
sheyong 发表于 2022-10-18 21:45
哈哈哈哈看着好凌乱
木子爱生活 发表于 2022-10-19 00:27
完全看不懂的排版
bennyt 发表于 2022-10-19 02:45
刚开始学习,了解一下。
shiys8 发表于 2022-10-19 08:04
灰常灰常的辣眼睛
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-25 04:03

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表