2841-周同学-算法方向-自然语言处理-就业:否 扫二维码继续学习 二维码时效为半小时

(0评价)
价格: 免费

字典

键值对,无序,类似数据库那种感觉

字典中通过“键对象”找到对应的“值对象”。“键”是任意的不可变数据,但是:列表、 字典、集合这些可变对象,不能作为“键”。并且“键”不可重复。“值”可以是任意的数据,并且可重复。

 

创建方法

1、{} 或 dict()

2、zip()

>>> k = ['name','age','job']  #键
>>> v = ['gaoqi',18,'techer']  #值
>>> d = dict(zip(k,v))  #打包
>>> d
{'name': 'gaoqi', 'age': 18, 'job': 'techer'}

3、fromkey创建值为空(None)的字典

>>> a = dict.fromkeys(['name','age','job']) >>> a
{'name': None, 'age': None, 'job': None}

[展开全文]

生成器推导式创建元组

>>> s = (x*2 for x in range(5))
>>> s
<generator object <genexpr> at 0x0000000002BDEB48> #s还是个指针
>>> tuple(s)
(0, 2, 4, 6, 8)
>>> list(s) #只能访问一次元素。第二次就为空了。需要再生成一次 []
>>> s
<generator object <genexpr> at 0x0000000002BDEB48>
>>> tuple(s)
()
>>> s = (x*2 for x in range(5))
>>> s.__next__()  #逐步移动指针的方法
0
>>> s.__next__()
2
>>> s.__next__()
4

元组总结:

不可变

访问处理速度快

与整数和字符串一样,元组可以作为字典的键,列表则永远不能作为字典的键使用。

[展开全文]

元组的元素访问和计数

切片

排序:只能使用内置函数 sorted(tupleObj),并生成新的列表对象。

>>> a = (20,10,30,9,8)

>>> sorted(a)
[8, 9, 10, 20, 30]

zip(打包)

zip(列表 1,列表 2,...)将多个列表对应位置的元素组合成为元组,并返回这个 zip 对象。 >>> a = [10,20,30]
>>> b = [40,50,60]
>>> c = [70,80,90]

>>> d = zip(a,b,c)
>>> list(d)
[(10, 40, 70), (20, 50, 80), (30, 60, 90)]

[展开全文]

元组 tuple

不可变序列,没有增删改操作

关键在于访问、计数

创建元组

1、()

a = (10,20,30) or a = 10,20,30

b = 10,

2 、tuple()

b = tuple() #创建一个空元组对象

b = tuple("abc")

b = tuple(range(3)) b = tuple([2,3,4])

【区分】

tuple()可以接收列表、字符串、其他序列类型、迭代器等生成元组

list()可以接收元组、字符串、其他序列类型、迭代器等生成列表

[展开全文]

二维列表

前套循环打印2维列表

for m in range(3):

     for n in range(4):

          print(a[m][n],end="\t")

      print() #打印完一行换行

[展开全文]

列表的逆序

1、可以用切片[ : : -1]

2、reversed()返回迭代器,时间换空间

>>> a = [20,10,30,40]
>>> c = reversed(a)

>>> c  

<list_reverseiterator object at 0x0000000002BCCEB8>

#说明c是个迭代器

>>> list(c)
[40, 30, 10, 20]

#把c转换成列表输出倒序

>>> list(c)
[]

#迭代器只能用一次,迭代器里包含一个指针(如:0x0000000002BCCEB8),从列表尾部向前指,用第一次的时候就已经指到最前了

[展开全文]

切片slice操作

[起始偏移量 start:终止偏移量 end[:步长 step]]

⚠️ end-1(索引)

⚠️如果只有如:[1:3]、[-5:-3],则包头不包尾

⚠️使用负数,反着数

列表的遍历

for obj in listObj:

print(obj)

[展开全文]

列表元素访问和计数

1、索引访问

索引区间[0,列表长度-1],超范围会报异常

2、index() 元素在列表中(首次)出现的索引

index(value,[start,[end]])

>>> a = [10,20,30,40,50,20,30,20,30]
>>> a.index(20)

1
>>> a.index(20,3) #从索引位置 3 开始往后搜索的第一个 20

5
>>> a.index(30,5,7)

6

3、count() 计数

4、len() 长度=元素个数

5、成员资格判断

in

count() 返回0就不在

[展开全文]

列表元素的删除

1、del() 本质是数组拷贝

被删元素后面的依次向前拷贝

2、pop() 方法

删除并返回指定位置元素

3、remove() 方法

删除首次出现的指定元素,若不存在报异常

[展开全文]

列表的增加与删除

1、append() 尾部加,推荐

2、+运算,拼接,会产生新列表对象,id变

3、extend() 原地扩展,id不变

4、insert() 插入元素之一,涉及数组移动

5、乘法扩展

[展开全文]

列表的创建  

可存储任何数据,索引下表获取值

range()创建整数列表

range([start,] end [,step])

start参数:可选,起始

end参数:必选,结尾

step参数:可选,步长

循环创建多个元素

a = [ x*2  for  x  in  range(5)]

>>>a

[0,2,4,6,8]

if过滤元素

a = [ x*2  for  x  in  range(100) if x%9==0]

>>>a

[0,18,36,54,72,.......,198]

[展开全文]

python的序列

数据存储方法:字符串、列表、元组、字典、集合

存地址、轻量级

列表大小可变

[展开全文]

Python基础课

一、可变字符串

字符串定义以后是不可变的,不能原地修改吗,

 

 

[展开全文]

连续[2:5,1:4]跳跃[[2,1],[3,5]]

[展开全文]
Dino · 2021-05-09 · 自由式学习 0

分解问题

确认坐标系0点

按照思路敲代码

"报错的文字里总有认识的单词”

[展开全文]

搜索“CMD"
输入“python”

[展开全文]

类方法,实例方法

类属性,实例属性

类方式和静态方法中不能调用实例变量,实例方法

[展开全文]

实例防范从属于实例对象

[展开全文]

类在进行实例话时,先调用new()函数创建对象,然后再把地址引用给变量

[展开全文]

is适用于比较地址,即判断是否为同一个对象,==是判断值的大小是否相同

[展开全文]
Daniel · 2021-04-19 · 自由式学习 0