上周内容回顾

8/9

编程语言发展史

机器语言 》》》汇编语言》》》高级语言
难度递减  开发效率猛增  运行速度递减

编程语言分类

编译型的C++   解释型的python

python解释器

主要分两大种2.X 和 3.X
一般不用最新版本所以2.7和3.6最常用
官网下载,自定义安装的时候勾上环境变量就行

python多版本共存

下好两个版本之后找到python.exe然后复制一个改名比如2.7的就改名叫python2.exe之后cmd窗口输入python2就可以了

python应用领域

各行各业遍地开花
甚至很多不法行业也用

编程软件

办公要办公软件,编程自然也要编程软件
好用强大的pycharm专业版

8/10

pycharm破解操作

中国互联网用户的一致价值观
	只要我白嫖的够快,割韭菜的镰刀就砍不到我
各种方法都能百度
1.破解码
2.反复30天试用
3.破解文件  等等

pycharm基本操作

基本都在file里面setting设置需要的
必备的就是appearance改背景色
editor >> general >> change font size..改调大小快捷键
# 记得apply + ok确定
新建就右键选要的文件类型
运行用ctrl + shift + f10

python语法注释

# 单行注释
"""
多行
注释
"""

变量

=右边的是变量值
=左边是变量名
= 是赋值符号和数学上的等于意义不同python中数学意义上的等于用==表示

变量名的命名规范

1.见命知意
2.数字,英文,下划线组成
3.数字不开头  下划线尽量不开头
4.不要和关键字冲突

变量名的命名风格

有三种反正我已经决定用下划线式了
user_name_id 就是单词之间下划线隔开

常量

python中没有绝对意义上的常量,但是墨守成规的把全大写的变量名当成是常量(不可修改)
所以看到别人的代码里有全大写的变量名就要注意,一定要改之前也要问问这个源代码的主人

数据类型

在第二天整合到一起

8/11

python基本数据类型

1.int 整型 就是整数不带小数点的那种
2.float 浮点型  就是小数
3.str 字符串  描述性的东西啥都行,文字居多
4.list [,] 列表  元素有序可重复 里面可以嵌套任意数据类型
5.dict {':',}  字典里面是K:V键值对,取值通过K取V
6.bool 布尔值  只有True 和 False 两种状态,用来判断对错是非
7.tuple (,)元组 小列表基本一样就是里面的值不能通过别的代码改
8.set {,} 集合 内部元素无序且不重复

与用户交互

input 和 print

格式化输出

用占位符实现 %s 
占位符之后输入的数据一定要和之前占位的数目对应上
还有数字占位符 %d 不常用
不过可以用来填充固定单号
print('%08d' % 666) # 生成8位数单号不够的位数用0补齐

基本运算符

1.算数运算符
就注意  **次方 //整除
2.增量运算符
x = x + 1  # 等价于 x += 1
3.链式赋值
x = y = z =
4.交叉赋值
a, b = b, a 
5.解压赋值
l = [1,2,3]
a,b,c = l

8/12

逻辑运算符

and 与
or 或
not 非

成员运算符

in 判断个体是不是在整体里

身份运算

id 类似于内存地址
is  判断两者内存地址是否相等
地址相等值一定相等
值相等地址不一定相等

流程控制

1.顺序结构  就是一步步向下执行
2.分支结构  由条件造成了分叉出现两种甚至更多的结果  if
3.循环结构  由于哪个条件会要向前循环while for

缩进

代码缩进表示从属关系
当某一行代码结尾出现冒号':' 下面一行必缩进
记好从属关系的重点是要思路清晰写好注释

分支结构

graph LR A-->B B --> C C -->|a<1| D[结果1] C -->|a>=1| E E -->|a<10| F[结果2] E -->|a>10|G[结果3]
直接说最复杂的
if:
    # 子代码
elif:
    # 子代码
else: 
    # 子代码

循环结构

st=>start: 开始框

op=>operation: 处理框

cond=>condition: 判断框(是或否?)

sub1=>subroutine: 子流程

io=>inputoutput: 输入输出框

e=>end: 结束框

st->op->cond

cond(yes)->io->e

cond(no)->sub1(right)->op
while 条件:
		条件成立后执行的循环体代码
1.先判断条件是否成立  如果成立
2.执行while循环体代码 代码执行完毕后继续判断条件是否成立
3.如果还成立则继续执行while循环 执行完毕之后继续判断条件是否成立
4.重复2和3直至不成立为止

8/13

循环结构之for 循环

比起while循环for简单很多
对于取值方面是王者级别
l = [1,2,3,4,5]
用for循环的话直接
for i in l:
    print(i) # 就不用打什么时候停很方便

range的用法

range是个迭代器
所以能和for配合使用
for i in range(0,10)  # 从0到9
可以在后面再加个参数表示数字间隙
for i in range(0,10,2)  # 间隔为2从0取到9

数据类型内置方法

整型

print(int('11'))  #把数字类字符串转整型
print(bin())  # 转二进制
print(oct())  # 转八进制
print(hex())  # 转十六进制

浮点型

把整型价格小数点
字符串会直接报错
基本没用

字符串

len 计长度
[0] 取第一个数
[0,5,2] 取1到5的字符间隔2
.strip  去掉首尾指定字符
.lstrip 去掉左边的指定字符
.rstrip 去掉右边指定字符
.split('|') 以|为间隔切分
split('|', maxsplit=1) 以|分割最多分一个
.rsplit  从右边开始分
.upper 全变大写
.lower 全变小写
.count 计次
.replace('a','b',3)  把里面的a换成b换3个
'|'.join() 把某个列表里的字符用|拼接

列表

len()  计个数
[0,4,2] 取第一个到第四个元素间隔2
.append()  添加‘一个’元素
.extend 扩展列表
del 删除元素
.pop 弹出元素  会返还那个值
.remove 删除元素  
.count 计数
.sort 升序排列
.sort(reverse=True) 倒叙排列

字典

len()  计长度
.get()  取值 但是如果没有会返回none
d['age'] = '18'  存在这个K就改对应的V
不存在就添加这个K:V键值对
.pop 删除
.keys 取K
.values 取V
.items 都取

集合

a&b 交集
a-b a独有的元素
a|b 并集
a^b 并集去掉交集