python学习笔记(一)数据类型

1、整数类型int:不限制大小

(1)divmod(m,n):得到//和%的结果
(2)整数比较==,得到逻辑值
可以做连续比较7>3>=3:True
(3)数的进制
16进制用0-9,a-f表示,0x开头,hex(),转16进制
2进制 0b开头,bin()转2进制
8进制 0o表示,oct()转二进制

2、浮点数类型float

受到17位有效数字限制
科学计数法表示浮点数1.5e-11
进制转换是会导致误差(计算机要转为二进制)4.2+2.1=6.3000000001,浮点数避免用相等判断

3、复数类型

j表示虚部。(a+bj).imag=b
(a+bj).real=a
复数间可以做相等比较,不能做大小比较

4、数学函数math

用dir(math)查看math中的内容.math.sqrt,math.e…
cmath模块专门用于复数计算cmath.polar转换成极坐标,cmath.rect极坐标表示平面直角坐标的复数

5、逻辑值

(1)运算
and,or
not:单目运算 not true=false
优先级:not最高,and其次,or最低:多用括号
(2)各种类型对应的真值
整数,浮点数,复数:非零数真,0为假
字符串类型是空与非空的区别
空序列是假
None是假

6、字符串

(1)文本的表示
用单引号和双引号都可以,字符串中包含单引号,用双引号引用,特殊字符可以用转义符表示
多行字符串用连续三个’’‘来表示eg:
‘’’ ad d df
dfdf df ‘’’
\n 换行 \代表
(2)字符的编号
从0开始,可以从-1开始(最后一个)
eg:s="abc’ s[0]=a
(3)变量起名的规范
从字母开始
type可以返回类型
(4)字符串操作
len表长度
s[start : end:step]做字符串切片,是左闭右开区间,有start,没有end
加法:连接两个字符串
int:字符串重复
= =:判断是否相等
in:判断字符串是否在一个字符串当中:‘h’ in a
str.strip:去掉前后空格,不包含文本中间的空格
str.lstrip:去掉前空格,不包含文本中间的空格
str.rstrip:去掉后空格,不包含文本中间的空格
str.isalpha,str.isdigit,str.isalnum:判断字符串中是否全部由字母,数字,仅包含字母和数字组成
字符串的操作方法
.spilt(’ ‘),用’'分割字符串
‘-’.join(a).用-连接不同的字符串
a.replace(‘Tom’,‘Jone’):用Jone代替Tom
(5)序列:能够按照整数顺序排列的数据。
字符串是特殊的序列
可以所以,可以切片,可以用in,+,
,len

7、变量和引用

(1)命名方式
数字字母和_,开头必须是字母,可以区分大小写。从python3开始中文可以是字母
(2)赋值:
合并赋值:a=b=c=1
按顺序依次赋值:a,b,c=1,2,3
简单赋值:price+=1 price/=3+4(price=price/7)
(3)类型强制转换
int(),float(),bool(),str()
ord()转ASCII码
chr()ASCII转字母等

8、列表和元组

(1)数据收纳盒
分格子,有索引规则,l列表可以添加,删除,替换,重排,元组不可变但性能更高
(2)列表和元组的创建
列表[]或者list()
元组()或者tuple()
列表和元组的元素类型没有限制
(3)对列表进行操作
alist.append(item)列表末尾添加
alist.insert(i,item)某个位置插item
append列表后再添个列表
alist.pop(i)删除指定位置的元素,不带序号是最后一个,返回删除的元素
remove指定值的元素
clear清空列表
reverse:倒序号排序
del alist[i]删除列表中指定位置的元素
alist.index(item):某个元素第一次出现的位置
alist.count(item):返回某元素出现的次数
alist.remove(item):删除首次出现的该元素
sort:按数值排序,最小放前面,ifsort(reverse=true)从大到小
reversed,sorted生成新列表,不改变原有列表
reversed只是一个逆序器,需要再list一遍才能变成列表,sorted直接得到列表
(3)共同操作
+加法 *,生成新的列表或元组,不改变原来的
len
索引alist[n],atuple[n]
切片同字符串
查找in,idex,count
sum累计求和,sum,min

9、字典

(1)贴标签的数据
特点是通过标签来索引数据(key and value)
(2)创建一个字典
{}或者dict()
字典中的每一项成为一个项(item),包含key and value两者用:连接
批量添加数据项(标签key)dict.fromkeys(列表或者元组)
eg dict.fromkeys((‘age’,‘grade’))
字典可变
字典用key索引,key一定要是不可变类型,字符串,数值类型,元组
value没有限制
字典更新adict.update(bdict):key重合就更新,不重合就添加
或者alist.update(friends=value)
del adict[key]可以删除指定标签的项
adict.pop(key):删除指定标签的项并返回它的数据值value
popitem()随即返回数据项并返回值
clear全部清除
len
索引adict[key]
adict.get(key)返回value
adict.keys()返回值为:dict_keys([所有key])
adict.values同上
adict.items() :dict_items([(key1,value1),(),()])
in: in adict or in adict.keys()

10、set

(1)集合是不重复元素的无序组合,是对字典的改造,只留下keys
{}和set()生成
用set进行强制转换,忽略重复元素。
集合中不能加入可变类型的数据,和key要求相同,没有顺序
aset.add(key):把某个元素加入set
update集合和序列等批量添加
aset.remove(key)
discard与remove相同,但不存在元素不会报错
pop()删除任意元素
len
clear清除
集合元素访问:in
pop可以用来遍历,先copy
for a in aset
(2)集合运算
|并,交&,差-,对称差^
关系判定<=子集,<真子集,>=包含
判断两个集合的交是否为空aset.isdisjoint(bset)
(3)什么时候用集合
快速去重复
判断元素是否在一组数据中,如果这组数据的次序并不重要,用集合的效率更高

11、可变类型和不可变类型

(1)数据收纳的灵活性
列表:可接长拆短的积木式容纳盒
元组:固定长短的收纳盒
不可变类型指的是一旦创建以后就无法修改数据值:int.float.str,complex,bool,tuple:可以作为字典的key,处理效率更高
list,dict,set:前者有序,后两者无序,都可变:计算和存储代价更大
变量的应用特性
a=[1,2,3,4]
b=a
则id(a)=id(b)
if a 变,b也跟着变

12、输入和输出

input函数:input(‘提示符’)
x=input(),y=input()输入5和6,则x+y=‘56’
要x=int(input()),y=int(input()),则x+y=11
print函数:
print( [object,obj1,obj2,…, sep=’ ‘, end=’\n’ , file=sys.stdout])
sep:用什么东西隔开各个输出值,end是末尾添加符号,通常用换行符
file是输出的发送的文件或流
格式化打印
print(’%d %s '%(v1,v2))
d整数,s字符串
04d可以补0,

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值