基本数据类型
类型 | 例子 |
---|---|
number(数字) | int(整数),float(浮点数),complex(复数) |
string(字符串) | 由单引号,双引号,或者3个单引号或双引号 ‘hello’,’‘hello’’,’’‘hello’’’,""“hello”"" |
Boolean(布尔值) | True 或者 False |
None(空值) | 表示没有,并不等于0 |
list(列表) | 一种有序的集合 [0,1,2,3,45] |
tuple(元组) | 不可变的列表 (0,1,4,8) |
dict(字典) | 由键值对组成集合 {’a’ : 12, ‘name’ : ‘tian’ , ‘age’ : 15} |
set(集合) | 无序,无重复元素的集合 {1,5,9,14} |
(string,tuple,number)是不可更改类型
不可变类型参数传递时:只是传递值
可变类型参数传递:传递的本身
number(数字)
complex(复数):complex(a,b)或者 a+bj (虚部用 j 表示)(a,b都为浮点数)
string(字符串)
Python中的字符串有两种数据类型:str类型和unicode类型。str类型采用的ASCII编码,也就是说它无法表示中文。unicode类型采用unicode编码,能够表示任意字符,包括中文及其它语言。并且python中不存在像c语言中的char类型,就算是单个字符也是字符串类型。字符串默认采用的ASCII编码,如果要显示声明为unicode类型的话,需要在字符串前面加上’u’或者’U’。如u’中文’,U’中文’
ASCII编码适用英文字符,Unicode适用于非英文字符(例如中文、韩文等),而utf-8则是一种储存和传送的格式,是对Uncode字符的再编码(以8位为单位编码)。
在代码第一行写入**#-- coding: utf-8 --=** :声明文件编码格式为utf-8
‘ + ’ : 合并字符串
转义字符:
函数 | 作用 |
---|---|
title函数 | 以首字母大写显示每个单词(空格进行区分) |
upper,lower函数 | 所有字母大写 ,小写显示 |
rstrip,lstrip 函数 | 删除字符串右边即末尾空白和删除字符串左侧即开头部分空白 |
strip函数 | 同时删除开头和末尾空白 |
str函数 | 将非字符串转变为字符串 |
count(sub,start,end)(后两个参数可选)函数 | 统计字符串中莫个字符串出现次数 |
find(str,start,end)(后两个参数可选)函数 | 查找字符串中是否包含字符串str,返回值为其位置,没找到返回==-1== |
index(str,start,end)(后两个参数可选)函数 | 跟find方法类似,只不过若str不存在,会报一个异常 |
split(str,maxsplit)函数 | 以str分割字符串,maxsplit可选,表示最多可以以maxsplit*str截取,返回一个列表 |
join(seq)函数 | 以指定字符串分隔符,将seq(元组,列表等)中的所有元素组合成一个字符串 |
编码 | encode(encoding=“utf-8”) |
解码 | decode(“utf-8”)要与编码时的格式一致 |
title函数:以首字母大写显示每个单词(空格进行区分)
upper,lower函数:所有字母大写 | 小写显示
rstrip,lstrip 函数:删除字符串右边即末尾空白和删除字符串左侧即开头部分空白
strip函数:同时删除开头和末尾空白
**str()**函数:将非字符串转变为字符串
count(sub,start,end)(后两个参数可选)函数:统计字符串中莫个字符串出现次数
find(str,start,end)(后两个参数可选)函数:查找字符串中是否包含字符串str,返回值为其位置,没找到返回==-1==
index(str,start,end)(后两个参数可选)函数:跟find方法类似,只不过若str不存在,会报一个异常
**split(str,maxsplit)**函数:以str分割字符串,maxsplit可选,表示最多可以以maxsplit*str截取,返回一个列表
**join(seq)**函数:以指定字符串分隔符,将seq(元组,列表等)中的所有元素组合成一个字符串
编码:encode(encoding=“utf-8”)
解码:decode(“utf-8”)要与编码时的格式一致
list(列表)
列表是一种可修改的集合类型,其元素可以是数字、string等基本类型,也可以是列表、元组、字典等集合对象,甚至可以是自定义的类型。
索引:从0开始
切片:list[start:end:步长] 步长可省略
in,not in:可以判断元素是否在列表中
如:
is,not is:可以判断是否引用同一对象
传递列表时可以 list[:]传递副本
方法 | 作用 |
---|---|
append(obj)函数 | 在列表末尾添加新的元素 |
extend(iterable) | 在末尾一次性追加多个值 |
insert(index,obj) | 在指定位置插入元素 |
pop(index)参数可选默认为-1 | 删除指定位置元素 |
remove(value) | 删除指定值的元素(第一个匹配结果) |
clear() | 清空列表 |
index(value) | value值的第一个匹配索引 |
len(list) | 列表长度(列表元素个数) |
max(list),min(list) | 列表中最大最小元素 |
sum(list) | 列表求和 |
count(value) | 统计value值在列表中出现的次数 |
reverse() | 将列表倒序,不改变原列表 |
sort() | 将列表按升序排序 |
浅拷贝(引用拷贝)(id一样) | list1 = list2 |
深拷贝(内存拷贝)(id不同) | list2 = list1.copy() |
list(tuple) | 将元组转换为列表 |
元组(一种不可修改的列表==(安全)==)
本质:一种有序的结合
索引:0开始
len(),max(),min()方法同列表
dict(字典)(无序)
使用键值对储存,可以具有极快的查找速度
字典中的 key 必须唯一,且为不可变对象
==dict.get(key)==方法:查找key对应的值,没有返回none
如果直接dict[key]没有key时会报错,故一般使用get方法
遍历字典:
for key,value in dict.items():
print(key,value)
方法 | 作用 |
---|---|
dict.clear() | 删除字典中所有元素 |
dict.copy() | 返回字典(浅复制)的一个副本 |
dict.get(key,default=None) | 对字典dict 中的键key,返回它对应的值value,如果字典中不存在此键,则返回default 的值(注意,参数default 的默认值为None) |
dict.has_key(key) | 如果键(key)在字典中存在,返回True,否则返回False. 在Python2.2版本引入in 和not in 后,此方法几乎已废弃不用了,但仍提供一个 可工作的接口。 |
dict.items() | 返回一个包含字典中(键, 值)对元组的列表 |
dict.keys() | 返回一个包含字典中键的列表 |
dict.values() | 返回一个包含字典中所有值的列表 |
dict.iter() | 方法iteritems(), iterkeys(), itervalues()与它们对应的非迭代方法一样,不同的是它们返回一个迭代器,而不是一个列表。 |
dict.pop(key[, default]) | 和方法get()相似,如果字典中key 键存在,删除并返回dict[key],如果key 键不存在,且没有给出default 的值,引发KeyError 异常。 |
dict.setdefault(key,default=None) | 和方法set()相似,如果字典中不存在key 键,由dict[key]=default 为它赋值。 |
dict.setdefault(key,default=None) | 和方法set()相似,如果字典中不存在key 键,由dict[key]=default 为它赋值。 |
布尔类型
set(集合)
set类似dict,是一组key的集合,不存储value
无序,无重复元素
set.add(value)方法:添加元素
list去除重复元素:**list(set(S))