好友
阅读权限 10
听众
最后登录 1970-1-1
学习记录~纯粹小白~每天进步一点点~与所有正在学习的人一起共勉~
列表: 为什么需要列表? ·变量可以存储一个元素,列表可以存储 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 ;还可以在指定的 start 和 stop 之间进行查找; 获取单个元素: lst=lst[x] ,正向索引从 0~ ( N-1 ),例如: lst[0] ; 逆向索引从 -N 到 -1 ,例如: lst[-N] ;指定索引不存在,则会抛出 IndexError ; Print(lst.index( “ hello ” ,1,4)) 。 获取多个元素: 语法格式: Lst[start:stop:step] 说明: step 默认步长为 1 , start 默认为 1 , stop 默认为 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) ; ④调用方法 del , del list ; ⑤使用切片, new_list=list[a:z:n] , a 为 start , z 为 stop , n 为步长, new_list=list[1:3] ,使用切片会产生新的列表,若不想产生新的列表,而是删除原列表中的内容,可以如下操作: list[a:z:n]=[ ] ,( list[1:3]=[ ] ) print(list) 。 修改: ①使用索引, list[n]=x , list[2]=100 , n 为索引值, x 为替换元素 ; ②使用切片, list[a:z:n]=[b,c,d,e,f,...] , list[1:3]=[300,400,500,600] , a 为 start , z 为 stop , n 为步长 ; 排序: ①调用方法 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)
Key4 ↓ Value4
Key2 ↓ Value2
Key1 ↓ Value1
Key3 ↓ Value3
Key5 ↓ Value1
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 ” , ” fruits ” Prices=[96,78,85]
↓ { “ zhong ” :96, ” books ” :78, ” fruits ” :85}
·内置函数 zip() : -- 用于将可迭代的对象作为参数,将对象中的元素打包成一个元组,然后返回由这些元组组成的列表; Items=[ “ zhong ” , ” books ” , ” fruits ” Prices=[96,78,85] lst=zip(items,prices) Print(list(lst))
{item.upper():price for item,peice in zip(items,price)}
免费评分
查看全部评分