python学习笔记-1

入门课程 主要记录python的数据类型和基本函数

1.数据类型

--------------------

a.字典 Dictionary

$定义

d = {key1:value1,key2:value2....} 定义时使用{} key与value之间用:分隔,每一个元素都是一个 key-value 对,多个元素用,分隔。

$约束

key是唯一的(大小写敏感),为已有key复制将覆盖原值;
字典中的元素是无序的;
字典中元素的值可以是任意数据类型。

$操作

赋值

d['newkey'] = newvalue

删除单个元素

del d['newkey']

清空字典

d.clear()

-----

b.列表 List

$定义(可理解为数组)

l = [a,b,c....] 定义时使用[] 每个元素用,分隔。

$约束

元素是有序的
非空List第一个元素为l[0] 一个含有n个元素的List 最后一个元素为l[n-1] 或 l[-1];
List允许索引为负值 负值是从尾部向前计数来取元素;
List中元素的值可以是任意数据类型。

$分片

指定2个索引值来得到List的子集,l[0:3] 返回 list 的前 3 个元素 : 前后索引均可省略,分别默认为0 和 -1。

$操作

增加

l.append('new') 向list尾部增加一个元素。

l.insert(1,'new') 指定索引增加一个元素,该元素后面的元素索引会自动向后移动一个位置。

l.extend(["two", "elements"]) 连接2个List,注意extend的参数为list,新元素会在尾部。

搜索

l.index('a') 在 list 中查找一个值的首次出现并返回索引值,如果在 list 中没有找到值,Python 会引发一个异常。

'a' in l 要测试一个值是否在 list 内,使用 in。如果值存在,它返回 True,否则返为 False 。

删除

l.remove('a') 删除首次出现的值

l.pop() 删除最末尾的元素,并返回。

List 运算

+ 运算符连接起来相当于extend,但大型list使用extend会快一些
* 运算符 相当于将原来的list重复作用于新的list

-----

c.元组 Tuple 即为不可更改的List

$定义

t = ('a','b','c') 定义时使用() 每个元素用,分隔。

$约束

Tuple 不能使用增、删、查操作

$好处

Tuple 使用比List 快,适合存放常量
安全,可以转换为List,反之不可以
可以作为字典的key,List则不可以,以为List可变
Tuples 可以用在字符串格式化中

--------------------
2.函数定义

def function(parameter1,parameter2,...):
函数体需要缩进

$一些有用的函数

type 函数:返回任意对象的数据类型。
str 函数:将数据强制转换为字符串。
dir 函数:查看对象可进行的操作。
callable 函数:对象是否可以调用。
getattr 函数:获取对象引用,可用于分发,自省的核心。

$其他知识

python的内置函数在 __builtin__ 模块中

学习教程:dive into python 一本很好的书