上节课讲的内容
变量, 输入输出, 选择语句
比较运算符:
>,<,>=,<=,!=,==...
逻辑运算符:
and or not
演示 08_answer.py 石头剪刀布人机大战
字符编码:
- ASCII,GB2312,GBK,UNICODE------> utf-8
- ord('A')=65
- chr(66)='B'
- # -*- coding: utf-8 -*- 告诉别人, 你的 Python 文件是 UTF-8 编码
Python 的字符编码问题总结:
使用说明
1.str 就是 str 类型, Python 内部用 UTF-8 编
2.bytes(str,encoding="UTF-8")可以把 str 转化为 UTF8 编码的字节流
3.str.encode("gbk") 吧 str 转化为 gbk 编码的二进制串
4.byte.decode("UTF-8") 把二进制串按照 UTF-8 编码解析成字符串
5.Python 默认写入文件是 gbk 编码, 想要修改可以打开文件时用 UTF-8
例:
把字符串转化为 UTF-8 编码的二进制串
bytes(str(a), encoding="UTF-8")
把字符串转化为 gbk 编码的二进制串
str(a).encode("gbk")
把 GBK 编码的二进制串用 GBk 编码方式解码成字符串
str(a).encode("gbk").decode("GBK")
用默认 (GBK) 方式打开文件并进行写操作(Python 会先 gbk 打开文件, 给写入字符串编码成 gbk, 再写入文件)
- with open("b.txt" , "w") as f:
- f.write(str(a))
用 UTF-8 打开文件并进行写入操作(Python 会先 UTF-8 打开文件, 给写入字符串编码成 UTF-8, 再写入文件)
- with open("b.txt" , "w", encoding="UTF-8") as f:
- f.write(str(a))
典型错误:
str(a).decode("UTF-8")
错误 1:str 类型不能 decode,bytes 不能 encode
print(str(a).encode("gbk").decode("UTF-8"))
错误 2: 用 gbk 编码成二进制串, 再用 UTF-8 解码不了
重要数据结构:
list 列表
Python 内置的一种数据类型是列表: list.
list 是一种有序的集合(非数学上的集合), 可以随时添加和删除其中的元素.
classmate=['小明', '小张']
classmate[0]='小明' ----------->下标从 0 开始, 不可以下标越界
classmate[1]='小张'
增加: append(值) ------>加到结尾
插入: insert(位置, 值)------->加到指定位置
删除 pop(位置)
修改: 直接赋值
len(列表名) = 列表元素个数
更多操作, 11.py
tuple 元组
类似列表, 但是不可以修改
classmate=('小明', '小张')
dict 字典类型
采用 hash 方式存储, 从名字快速对应到内容(so 名字是唯一的), 速度快, 空间换时间 (what is hash? 127.0.0.1/my/test.PHP)
d={'aa':95 , 'bbb':80 ,'ccccc':100}
查询: 通过名字找到对应的值
d['aa']
增加: 去一个名字, 然后赋值就可以.
d['dddd'] = 120
d['aa']=150 --------->会覆盖原来的值
修改: 直接赋值
d['aa']=150
删除: pop
d.pop('aa')
d.clear()全部删除
set 集合 (数学上的集合, 不可以有重复的值)
由 list 创建
- s=set([1,2,3,4,5]) = {
- 1,2,3,4,5
- }
- s=set([1,2,2,4]) ={
- 1,2,4
- }
- s.add()
- s.remove()
两个 set 可以做数学意义上的交集, 并集等操作
& |
程序控制结构
循环结构:
- for ... in ...:
- ...
- example:
- classmate=['asd','asdasd']
for i in classmate: -------->给每一个 list 类型的值取出来放到 i
print(i , end=" ")
for i in range(len(classmate)):------->len 取长度, classmate 的个数, range(n) 相当于生成 [0,n) 的整数
print(classmate[i])
list(range(10)) ------->给 rang 转化为 list 类型
- while ...:
- ....
- ...
- i=10
- while(i!=0):
- print(i)
- i=i-1
每一项演示 10.py
用户登录, 添加, 查看 09.py
来自为知笔记(Wiz) http://www.wiz.cn/i/77ad7a1f
来源: http://www.bubuko.com/infodetail-3016191.html