一、与c/c++语法区别之处:
1.字符串可以用单引号扩起来
2.两个乘号表示乘方运算,例如3**2点结果为9
3.str()函数将非字符串转化为字符串
4.注释用#标示
5.根据缩进来判断代码行与前一个代码行的关系
二、各种数据结构使用方法:
2.1 列表
定义与C语言中的数组类似,区别如下:
1)列表自带多种函数。
2)可用负值做索引倒序访问元素:arr[-i]访问列表中倒数第i个元素
3)len(arr) #获取列表长度
2.1.1 列表的增删改查及遍历:
arr.append('b') #追加
arr.insert(0,'a') #插入
del arr[1] #按索引删除
print arr.remove('a') #按值删除元素,并返回该元素的值。注意:只删除第一次匹配的元素
print arr.pop() #pop删除末尾元素,并返回删除元素的值
arr.pop(i) #pop第i个元素
for element in arr: #遍历列表,注意别忘写冒号
print element
2.1.2 列表排序:
arr.sort()
arr.sort(reverse=True) #永久倒序,改变了arr的内容
sorted(arr)#临时排序,不改变arr的内容
arr.reverse()#反转三、数值列表使用技巧
2.1.3数值列表使用技巧
1)range函数生成数值列表
print range(1,10,2)#生成[1,9)内的奇数
arr=list(range(1,10))#生成[1,9)的数值列表
2)列表解析:将for循环和创建新元素的代码合并为1行,并自动附加新元素
print [value**3 for value in range(1,11)] #打印前10个整数的立方
2.1.4列表切片(arr[startIdx:endIdx])
arr[2:4]#生成arr列表第2~4个元素的切片;
切片起始索引默认为0,终止索引默认为列表结尾+1(即可取完之后的所有元素)
arr[-3:] #返回arr的最后3个元素
for element in arr[-3:]: #遍历切片
用途:排行榜(topN),内容分页
2.1.5列表复制
arr1=[1,2,3]
arr2=arr1[:] #复制arr1,修改arr2不会修改arr1
arr3=arr1 #arr3为arr1的引用,修改arr3会同时修改arr1
2.2元组
不可变的列表
d=(10,20) #定义元组
d[0]=20 #错误,不能修改元组中元素的值
d=(20,20) #可以修改元组变量的值
三、常用模块使用方法
3.1日期模块
3.1.1时间格式转换
例如:"201901"转换为"2019-01-01 00:00:00"
basetime="201901"
structed_time=time.strptime(basetime, "%Y%m")
str_time=time.strftime("%Y-%m-%d %H:%M:%S",structed_time)
四、面向对象
4.1类特殊方法
__init__():类构造函数
例如:
def __init__(self,name,salary):
self.name=name
self.salary=salary
self:类的普通方法中的第一个参数代表类的实例,按惯例写作self,但不是python关键字
__class__
super(type,[,object-or-type])
type---类
object-or-type---类,一般是self