首页 > 代码库 > Python学习总结
Python学习总结
Python中空白符是有意义的,当代码处于同一缩进时,形成代码块
语句结束没有分号
基础部分
1. 变量不需要声明类型
2. 字符串
‘abc’ 或者 " abc"
‘’‘:可以含有回车,’,",的字符串
字符串占位符:k = ”a%s%s”=>拼接:k % 1//只有一个%s
k % (1,2)//有两个%s
’a’ * 3 = ‘aaa‘
3.数组
[xx,xx]
3.1用下标访问[2],从0索引
[2 : 5] 区间
3.2可以混合各种类型(数字,字符串。。。)
3.3添加元素:某个list.append(xx)
3.4删除元素:del 某个list[2]
3.5链接两个数组:list1 + list2
list1 * 3 = list1 + list1 + list1
3.6遍历: for i in list1: print(i);
4.元组
(xx,xx)一旦定以后不能更改
5.map
5.1{key1 : val1, key2 : val2}
5.2删除:del map1[key1]
5.3添加:map[key3] = val3
5.4不能 map1+map2
5.5遍历:for key in map1.keys():
key1 = key
val1 = map1[key]
5.6map1.clear() //清空map内容
del map1 //删除整个map
5.7map1.keys()/.values()
6.turtle库,用于绘图
import turtle
t = turtle.Pen()
t.forward(10)//向前
t.left(90)//向右转
t.right(90)
t.up()//拿起
t.down()//放下
7. if…else
7.1 if 条件:
语句//有个冒号
7.2 if 条件:
语句
else:
语句
7.3 if 条件:
语句
elif 条件:
语句//else if
7.4条件中可以用or 或者and 连接 not
8.空值:None
9.int(’10’) => 10
float(’10.1’) => 10.1
10.循环
10.1 for x in range(0,5) :
10.2 list,map的遍历
10.3 while i < 100 :
10.4 break/continue/True/False
11.range代表范围
print(list(range(10,20))
将10-20的数字转换成list,打印出来
12.注释#
提高部分
1. 函数
定义 def fun(param1, p2, p3):
内容
调用 fun(p1,p2,p3)
2. 模块
import 模块名字
sys, time
3.类,对象
class Base:
pass//该类没有更多信息了
3.1 继承
class Derived(Base):
pass
3.2 对象
d = Derived()
3.3 函数成员
class Derived(Base):
def f1(self):
内容
d.f1()
要调用同一个类中或者父类中的其他函数,使用self作参数,同时调用时仍然没有参数
def f1(self):
self.f2()
d.f1()
3.4 初始化参数
构造函数__init__(self, p1, p2):
内容
可以通过self.p1 = p1 赋值,Derived中不需要有p1
ps一定要有self, 否则会报错 “Type Error: takes 0 positional arguments but 1 was given”
库函数
1.输出 print()
2.输入 input() / sys.stdin.readline()
3. abs()
4.转型:bool(), int(), float()
//0=>False
//None=>False
//[]=>False
//“”=>False
5. len() =>对list, map, string
6. max(), min()
返回list,元组中的最大,最小值。也可以返回用,隔开的字符串中的最大最小值(“a,v,b")
也可以直接将数字用,隔开作为参数传入(a,b,c)
7.sum() 列表中元素想家
8. range(0,5) 返回一个迭代器,可以重复一个动作很多次
range(开始,结束, 步长)
开始不一定要>结束
9. dir()
dir(list, int, string, map)=>可以对某个类型使用的函数列表,__Fun__Python自己调用的函数
10. help(fun)//不加()
返回函数怎么用
11. eval() 将字符串作为参数并且返回它作为表达式的结果
eval(’10 * 5’)
eval(‘print(“123”)‘)
但不能运算拆分成多行的表达式
12. exec() 和eval类似,可以将多行字符串作为参数,一般可以从另外一个文件中读取Python代码,再运行
eval()返回一个值,exec()不返回
13. 库copy
a = copy.copy(b) 浅拷贝
copy.deepcopy(b) 深拷贝
14. 库random
random.randint(start, end)
random.choice(list) 从列表中随机取出一个数
random.shuffle(list) 洗牌
15. 库sys
sys.exit() 退出shell程序
sys.stdin.readline()
sys.stdin.readline(读入字数)
sys.stdout.write()
sys.version 版本
16. 库time
time.time() 秒数
time.asctime()可读的方式返回日期时间
time.asctime((年,月,日,时,分,秒,周几,一年中的第几天,是否为夏令时间))最后可以两个为0,返回可读的日期时间
time.localtime()返回time对象,含有日期时间
time.sleep(秒数)
文件操作
1.打开 file = open(“c;\\test.txt")
2.读取 text = file.read()
3.写入 file = open(“c;\\test.txt”, ”w”) //write
file.write(“...")
4.关闭 file.close()
5. 库os
- os.listdir() 返回所有文件和目录名
- os.remove() 删除文件
- os.removedirs() 删除目录
- os.path.isfile()/isdir()/exists()/isabs() 是否是一个文件/目录/存在/是否是绝对目录
- os.path.split() 返回目录,文件名
- os.path.dirname()/basename()
- os.system() 运行shell命令
- os.makedirs() 创建目录
- os.mkir() 在当前path中创建目录
- os.exit() 终止进程
- os.rename()
6. 库shutil
- shutil.copyfile() 文件
- shutil.copy() 目录
- shutil.move()
- shutil.rmtree() 删除目录
6. 库pickle 将python对象转换成可以读写到文件中的形式=>序列化
- pickle.dump(data, file)
- data = http://www.mamicode.com/pickle.load(file)
Python学习总结
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。