(列表是动态的)
基本操作:
list = ["A","B","C"]
#列表检索
list[0] #0 - 位置
list[-1] #-1 - 代表最后一个字母
#添加
list.append("D")
#插入
list.insert(0,"A0") #0 - 位置 A0 - 插入的值
#删除
del list(0)
#弹出
popped tmp = list.pop() #弹出最后一个
popped tmp1 = list.pop(0) #指定位置弹出
#根据值删除
list.remove("A")
#排序
#(永久性) list.sort() #默认字母序
#(暂时性) list.sorted()
list[a,b]
#a - 从序号a开始遍历
#b - 一共遍历b个元素
list[-3:] #从倒数第3个至结束
【Tips】range函数:range(1,5,2) 1 : 起始序号 ; 5:序号小于5 ; 2:步长
(元祖是静态的,即不可以更改其元素值)
d = (200,50)
#不能修改元祖的元素值,但是可以给存储元祖的变量赋值(类似于换整体)
d = (1,2) #正确
#d = 1 #错误
(1)if - else:
if A:
#语句1
else:
#语句2
(2)if - elif - else:
if A:
#语句1
elif B:
#语句2
elif C:
#语句3
else:
#语句4
#Python中最后的else可以省略
a if condition else b
#当 condition 为真时等于 a,为假时等于 b
(字典是动态的)
dict = {'color':'green','points':5}
#字典访问方式
dict['color']
#字典的遍历
#(方法1)
for key in dict:
print(key + dict[key])
#(方法2)
for key.value in dict.items():
print(key + value)
#字典的删除
del dict['color']
【Tips】字典的键名是不可变类型,即dict3 = {[1,2,3]: “uestc”} 就是错的!
def fun(num): #num 传入参数
def fun1(list[:]) #传入的是副本
def fun2(*a) #传入任意数量的实参
def fun3(size,*kinds) #位置实参+任意数量的实参
导入函数模块不同形式
import module_name
from module_name import function_name
from module_name import function_name as fu
import module_name as mn
from module_name import *
【思考题】PVM和JVM的区别和共同点?参见《Python源码剖析》部分
class Dog():
def __init__(self,name,age):
"""初始化属性 name 和 age"""
self.name = name
---略---
def description(self):
---略---
【修改属性值的三种方法】
(1)直接通过实例进行修改 car.year = 20
(2)通过方法进行设置 car.update(20)
(3)通过方法进行递增(增加特定的值)
【继承类】
class B(A):
def ___init___(self,make,model,year):
"""初始化父亲的属性值""""
super.___init___(make,model,year)
"""初始化自己特有的属性值"""
self.battery_size = 70
#重写父类方法
def road():
---snip---
【Tips】全局变量符号 global (类似于Java中的静态变量使用)
【Tips】类中可以将实例用作属性
#将实例用作属性
class B(A):
def __init___(self,a,b):
super.init(a,b)
self.c = fun() #A中的函数返回值
(1)打开文件
#file_reader.py
with open('text.txt') as file_object:
contents = file_object.read()
print(contents)
#其中text.txt可以更改为绝对路径;当前txt是和file_reader.py是同目录下
(2)逐行读取
with ---snip---
for line in file_object:
print(line)
【Tips】打开文件的三个属性
with open('filename',w/r/a):
#w - 写入模式
#r - 读取模式
#a = 附加模式
#使用异常可以避免程序崩溃
try:
#代码段
except ***Error:
print("***Error")
else:
#代码块
#其中else部分可以省略
整理自《Python编程:从入门到实践》(第一部分);
(第二部分)为三个项目:(1)2D游戏开发 (2)数据挖掘 (3)DjangoWeb开发