1.python是一门编程语言,是一门完全面向对象的编程语言 2.如果对语言进行分类,那么python是一门强类型,动态类型的语言 (弱类型:比如int可以变成float,python中数值类型不可变; 动态类型:编译时不知道变量类型,python中变量无类型)
1.数值类型
数值类型就是我们平常用来做计算的数字类型,在python中有如下几种数值类型
#整型 int #浮点型 float #布尔型 bool #复数型 (在python中用小写 j ,表示虚部,用其他的字母不行) complex
数值类型主要是用来是做运算的,所以还会有如下的运算符
#数值运行常用运算符 + - * / //(整除,向下取整) %(取余) ** (幂) #赋值运算符 = += -= *= /= ....
基本数值类型中前三种是常用的,复数在数学里面用得多,但是一般是用不上的。
2.
字符串 str
列表 list
元组 tuple
可变序列:list
不可变序列:tuple,str
3.集合
创建:{} set([]) 注意:创建空的集合要用set() 特点:元素唯一,无序 运算: & 交集 | 并集 - 差集 方法: s.add(x) 添加单个元素 s.update() 添加多个元素,添加多个元素时,参数为可迭代 s.remove() 移除元素 s.clear() 清空集合
4.字典
创建: {key:value} (大括号创建字典的键时要加引号)# 这种方式创建时,只要一一对应即可 dict(key=value) (括号里赋值方式,名字=对象,不要引号) #这种方式创建时,除了一一对应,还要保证key值符合变量命名规则 字典里的键和值用‘:’隔开,一对键和值组成一个项,项和项之间用‘,’隔开 特点: 键唯一,重复会被重新复制 无序 添加和取值 cidt[key]=value key存在则修改值,没有则添加 属性方法 .update({ }) 在字典中添加多个项 .items() 返回字典的各个项 .keys() 返回字典的键 .values() 返回字典的值 .get(k) 如果键k在,返回键k的值,不存在则返回None .get(k,x) 如果键k在,返回键k的值,不存在则返回x .pop(k) 返回并移除键k所对应的元素,不存在则抛出异常 .pop(k,x) 返回并移除键k所对应的元素,不存在则返回x 总结: key唯一,故可以是数字,字符串,元组 总结: 可变对象:list set dict 不可变对象: str tuple
5.
算术运算符:+ ,- , *, /, %, **,// 赋值运算符:= ,+=,-=, *=,/=,%=, **= 比较运算符:==,!=, >, <, >=,<= 成员运算符:in , not in 身份运算符:is , is not 判断两个名字是否指向同一个对象,当id相同时返回True(==比较运算是判断的值) 逻辑运算符:and,or,not and(与) 两个条件都满足时才返回True or(或) 有一个条件满足了就返回True not(非) 取反 计算顺序:默认地,运算符优先级表决定了哪个运算符在别的运算符之前计算。然而,如果你想要改变它们的计算顺序,你得使用圆括号 结合规律:运算符通常由左向右结合,即具有相同优先级的运算符按照从左向右的顺序计算 ''' ** #幂运算 + - * / % #算术运算符 < > <= >= #比较运算符 == != #比较运算符 = %= /= -= += *= **= #赋值运算符 is is not #身份运算符 in not in #成员运算符 not > and > or #逻辑运算符 '''
序列类型做为基本的数据类型是大家必须要掌握的,在python中大家会经常见到这三种数据类型。首先要掌握定义和序列的通用操作。
1.创建序列
字符串用引号创建
列表用中括号 [] 创建
元组用小括号() 或者 直接用逗号隔开各元素
2.序列的通用操作
索引取值切片 索引:正向索引和反向索引 类型的转换: str() list() tuple () 相加 + += 重复 * *= 检查成员 in not in
print('hello world') print(1+1) #print 打印的意思 #查看内建函数 dir(__builtins__) #type 查看对象类型 #id 查看对象的id 象征身份 #help 帮助 ##数值类型 a=1 #int b=1.1 #float c=True #bool e =1+2j # complex 查看关键字 #import keyword keyword.kwlist ###数字运算+-*/ //整除 %(取余) **(幂运算) # 变量命名规则 字母、数字、下划线组成 字母跟下划线开头 不能用python关键字 ###序列类型 #1.字符串 s='hello python' #str 引号引起来 s= "asd" #双引号同样可以 s="xiaoxi说'abc'" s=''' aabbcc''' #可以换行 #注释 'asdasdf' "adadad" #字符串可以用来注释 #号也可以用来注释 #2.列表 li=[1,2,3,4] #list 中括号里面的元素用逗号隔开 li=['我是','123'] li1=['a','b'] #字符串需要使用引号引起来 a=1;b=2 li=[a,b] a,b=1,2 a,b=b,a li=[] #list 空列表 #3.元组 tu=(1,2) #tuple 小括号引起来,小括号里面的元素用逗号隔开 tu=1,2 # 不加括号也可以 tu=1, tu=(1,) #元组只有一个元素的时候要加逗号 ##1.索引 #len li[0] #取索引未知为0的元素 ##切片 li[1:3] #第一个索引是要提取的第一个元素,第二个元素是剩余部分的第一个元素 ##步长 li=[1,2,3,4,5,6,7,8] li[0:8] #[1, 2, 3, 4, 5, 6, 7, 8] li[:] #[1, 2, 3, 4, 5, 6, 7, 8] li[-1:-3:-1] #[8, 7] li[1:6:2] #[2, 4, 6] #都有正负(方向)之分 ##序列类型的通用操作 + - * += -= *= li=[1,2,3,4,5,6,7,8] li +[23,12] li-[1,2] li *2 ## 检查成员 in not in ##强制类型转换 可以定义(工厂方法) int(1.1) float(1) str(123) list('asd') 转换元组时注意,加括号 list((1,2))
3.集合与字典的操作
#1.有两个列表 x = [1,2,3,'a','b','c'] y = ['a','b','c'] 找出x列表中在y 中也有的元素 x = [1,2,3,'a','b','c'] y = ['a','b','c'] set(x)&set(y) #2.新建一个字典,用3种方法往字典里面插入值;用 4 种方法取出values,用2种方法取出key di={} di['g']=123 di.setdefault('x') di.update({'x':456,'h':789,'t':901}) di['g'] di.values()#list di.get('x') di.items() #li=list(di.items()) #li[1][1] ''' di.pop('g') tu=di.popitem()# di.setdefault('x',666) ''' di.keys()#list di.items()#list #3.定义我们学过的每种数据类型,并且注明,哪些是可变,哪些是不可变的 a=1 #int type(a) b=1.2 #float c=True #bool ''' 关键字 import keyword >keyword.kwlist help('keywords') ''' e=1+2j #complex s='abc'#str s2="abc" s3='''abc''' li=[1,2] #list #可变 tu=(1,2) # tu1=1,2 se={1,2}#set #可变 di={'a':1,'b':2} #dict #可变 id