python基础语法
(一) python注释
1.单行注释 #
2.多行注释 '''
这是一个多行注释
'''
(二)python无自增运算,变量是以内容为基准的而不是像C一样以变量名为基准的。
自增:a=a+1 或者 a+=1 √
(三)for循环
1. for i in range(start, stop+1)
输出的是从start到stop中的数,每次增1
如 for i range(1,10) 遍历的是1,2,3,4,5,6,7,8, 9
2. for i range(stop)
从0开始,到stop-1
3.for i range(start,stop,step)
从start开始,每次增加step,直到大于或者等于stop
如for i in range(10,0,-1),指的是10,9,8,7,6,5,4,3,2,1
(四)list
1.定义:list指的是一个集合,使用[]来表示。
如:L=[12,‘china’,19.998]
list中元素的类型可以不一样
2.list是有序的,可以通过序号来访问,像访问数组的下标一样
如print(L[0]) 结果打印出 12
也可以使用倒序去访问
如print(L[-1]) 结果打印出19.998
3.可以通过内置的append()方法来添加到尾部
L.append('jack')
print(L)
结果 [12,'china',19.998,'jack']
4.可以通过insert()方法添加到指定的位置:
L.insert(1,3.14)
print(L)
[12,3.14,'china',19.998,'jack']
5.通过pop()删除最后尾部元素,也可以指定一参数删除指定位置
print(L.pop())
结果'jack'
print(L.pop(0))
结果12
6.可以通过下表进行复制替换
L[1]='America'
print(L)
[3.14,'America',19.998]
(五)tuple
1.可以看做是一种“不变”的list,访问也是通过下标,用小括号()表示
t=(3.14,'china','jason')
print(t)
(3.14,'china','jason')
t[1]='America' ×
也没有pop和insert、append方法
2.有一种可变的情况,将tuple中放置一个list
如t=(3.14,'china','jason',['A','B'])
L=t[3]
L[0]=122
L[1]=233
print t
(3.14,'china','jason',[122,233])
tuple不可变指的是指向的位置不可变,但第四个元素不是基本类型,而是一个list类型,所以t指向的该list的位置是不变的,但是list本身的内容是可以变化的,因为list本身在内存中的分配并不是连续的。
(六)dict
1.定义:是一个字典,形式key-value
d={'Adam':95,'Lisa':85,'Bart':59,'Paul':75}
2.len(d):计算它的长度
3.通过键值对方式添加d['jone']=85
4.get()
d.get('jason')
5. for key in d:print key,':',d.get(key)
6.dict特点:
①查找速度快,无论是十个还是10万个,速度都一样,但是代价是耗费内存。 list相反,占用内存小,但是查找速度慢,类似于数组和链表的区别,数组不知道要开辟多少空间,所以 一开始会开辟一个大空间,但是直接通过下表查找速度快;而链表占用的空间小,但是查找的时候必须 顺序遍历导致速度很慢
②没有顺序,list有序
③key不可变,value可变。一旦一个键值对加入dict后,它对应的key就不能再变了,但是value是可以变化的。所以list不可以当做dict的key,但是可以当做value
④key不可重复
7.dict的合并
d1={'mike':12}
d2={'jone':22,'ivy':17}
dmerge=dict(d1.items()+d2.items())
(七)set
1. set像是把dict中的key抽出来一样,类似于list,但内容不可重复
2. s=set(['A','B','C'])
print('A' in s) True
print('D' in s) False
3. add()方法
s=set([1,2,3])
s.add(3)
print(s)
set([1,2,3])
4. remove()方法
s=set([1,2,3,4])
s.remove(4)
print(s)
set([1,2,3])
(八)sort和sorted
sorted和sort 的区别主要在于sorted是将排序完的数据赋予给一个新变量,而sort则是在原变量的基础上序直接进行排,不产生新变量。