Python 3.5 学习笔记 1 (待续)

记录一下python3.5的学习过程。

python 基础

list 和 tuple
list

list 是一种有序的集合,可以随时添加和删除其中的元素。

1
2
3
>>> a =['aa','bb','cc']
>>> a
['aa', 'bb', 'cc']

查询list元素个数。

1
2
>>> len(a)
3

list是一个可变的有序集合,所以,可以在list末尾追加元素。

1
2
3
>>> a.append('dd')
>>> a
['aa', 'bb', 'cc', 'dd']

在list中某一位置插入某一元素。

1
2
3
>>> a.insert(0,'00')
>>> a
['00', 'aa', 'bb', 'cc', 'dd']

删除list的最后一个元素

1
2
3
4
>>> a.pop()
'dd'
>>> a
['00', 'aa', 'bb', 'cc']

删除list 的某一指定元素

1
2
3
4
>>> a.pop(2)
'bb'
>>> a
['00', 'aa', 'cc']

将list某一元素替换成别的元素,例如,替换成另一个list

1
2
3
4
5
>>> a
['00', 'aa', 'cc']
>>> a[0]=['1','2','3']
>>> a
[['1', '2', '3'], 'aa', 'cc']

若要取出新插入的list中的某一元素

1
2
>>> a[0][2]
'3'

tuple

元组,tuple是另一种有序列表,但是tuple一旦初始化就不能修改。因此代码的安全性更高。
在定义只有一个元素的tuple是,必须添加一个逗号,以区别数学公式中的小括号。

1
2
3
>>> tuple_t = (1,)
>>> tuple_t
(1,)

循环

Python提供了一个 range()函数,可以生成一个整数序列,range(2)生成的序列就是0,1。
循环方法有两种 for..in 循环,while 循环。

dict和set
dict

dict 是Python中内置的字典函数,dictionary ,在其他语言中也称为 map,使用Key-Value 键值对存储,是一个无序集合,具有极快的查找速度。

1
2
3
>>> d = {'li':100,'lei':102,'han':104}
>>> d['lei']
102

字典内插入数据

1
2
3
4
>>> d['Meimei']=105
>>>
>>> d['Meimei']
105

查询dict中是否存在某一key值,可以用in方法判断key是否存在,结果返回ture或false。

1
2
3
4
>>> 'love' in d
False
>>> 'li' in d
True

或者通过dict 提供的get方法, 若存在则返回对应的value,不存在返回none或者自己指定的值。

1
2
3
4
5
6
7
>>> d.get('li',-1)
100
>>> d.get('lie',-1)
-1
>>> d.get('lie')
>>> d.get('lie','dic')
'dic'

删除一个key,对应的value也会被删除,用pop(key)方法。

1
2
3
4
5
6
>>> d
{'li': 100, 'Meimei': 105, 'han': 104, 'lei': 102}
>>> d.pop('lei')
102
>>> d
{'li': 100, 'Meimei': 105, 'han': 104}

dict和list 的区别在于:
dict插入和查询数据的速度极快,不会随着key的增多而变慢。需要占用大量的内存。而list 查找和插入时间随着元素增加而增加,内存空间占用则小。 因此dict可以用在需要高速查找的地方。

dict的key是不可变对象, 因此当试图将list作为dict的一个key时:

1
2
3
4
>>> d[[1,2,3]] =109
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: unhashable type: 'list'

set

set也是一组KEY的无序集合,但不存储Value,创建一个set需要提供一个list作为输入集合:

1
2
3
>>> s =set([1,2,3,3,4,5,2])
>>> s
{1, 2, 3, 4, 5}

重复的元素被自动过滤。
可以通过add(key),和remove(key)来增删元素。

1
2
3
4
5
6
7
8
>>> s
{1, 2, 3, 4, 5}
>>> s.add(8)
>>> s
{1, 2, 3, 4, 5, 8}
>>> s.remove(2)
>>> s
{1, 3, 4, 5, 8}

set同样不能将list作为key存储对象。

函数

Python有很多有用的内置函数,可以直接调用。可以在官网查看文档 https://docs.python.org/3/library/functions.html

如果要定义一个函数要使用 def语句,函数名(参数):的形式,然后在缩进块中编写函数体。return 语句返回函数值,还可以用pass作为占位符,定义一个暂时的空函数。

1
2
>>> def stu(a):
... pass


[1]: 参考 http://www.liaoxuefeng.com/

如果觉得对您有帮助,就扫我交个朋友吧!