python基础语法

1.安装

Download Python | Python.org

python基础语法_第1张图片

 安装时,点击添加路径。

1.1 python的解释器

python基础语法_第2张图片

我们把代码写进.py结尾的文件里,然后   python   路径+文件名就可以运行它了。 

python基础语法_第3张图片

2.字面量

python基础语法_第4张图片

 例如print("我们"),"我们",就是字符串字面量,可看做常量。

2.1 变量

不用规定类型,通过字面量来分配类型。

需要我们手动初始化一个值。

变量没有类型,变量的类型就是它存的数据的类型

python基础语法_第5张图片

 2.2 数据类型(也是字面量类型)

如何查看变量的数据类型呢?、

用type()

python基础语法_第6张图片

 python基础语法_第7张图片

2.2.1 数据类型转换(先学三个,后面补充) 

python基础语法_第8张图片

2.3 标识符

不用中文

python基础语法_第9张图片

看看就行,不用背关键字 

 python基础语法_第10张图片

2.4 运算规则

python基础语法_第11张图片

跟c一样 

 python基础语法_第12张图片

2.5 字符串拓展

可以三种方式来定义字符串

 如果三引号的字面量没有变量接受,那它就成了注释

三引号里的内容是可以换行的。python基础语法_第13张图片

 2.5.1 单引号

python基础语法_第14张图片

 2.5.2 三引号

里面的内容可以换行。

python基础语法_第15张图片

2.5.3 那我想定义的字符串里,本来 也想包含“”(用转义\字符)

在单引号里写双引号,或者在双引号里写单引号。

python基础语法_第16张图片

 python基础语法_第17张图片

2.5.4 字符串拼接

两个变量通过  +号拼接。

 python基础语法_第18张图片

拼接字符串如果后面  + 一个数字,会出错。

python基础语法_第19张图片

2.5.5 字符串格式化(+号只能拼接字符串类型,不能拼别的类型)

先用%s占个位置,

后面的%就是把name 放进 %s占的那个位置。

python基础语法_第20张图片

 python基础语法_第21张图片

加号不太高效,我们用占位符来拼接字符串

python基础语法_第22张图片

2.5.6 占位符

python基础语法_第23张图片

%s,占位的变量是字符串

%d,占位进去的是整数形式。

%f,占位进去是浮点数类型,小数点后6位。 

 python基础语法_第24张图片

2.5.7 字符串格式化的精度控制

可以看到上节,浮点数占位后,自动延长6位,但是我们不想要这个效果。

比如 %5d,就是控制占位的整数长度为5位,不够的用空格补。

python基础语法_第25张图片

2.5.8 f加{}来填充字符串,快速格式化

这种方式没办法做精度控制

python基础语法_第26张图片

2.5.9 表达式的格式化(占位符里放表达式)

python基础语法_第27张图片

2.6 数据输入(input)(无论收到的是什么,都是字符串类型)

可以对字符串进行类型转换。

python基础语法_第28张图片

2.7 if 的书写方式

if  条件表达式(不加括号) : 冒号

python基础语法_第29张图片

2.7.1 if的嵌套(自动帮你缩进,空格缩进决定语句之间的嵌套关系)

python基础语法_第30张图片

2.8 while (跟if差不多)

python基础语法_第31张图片

2.9 for 循环

python基础语法_第32张图片

2.9.1 遍历字符串

拿出来的字符

 python基础语法_第33张图片

2.9.2 range,生成一个集合,类似c语言的原始for

python基础语法_第34张图片

 python基础语法_第35张图片

 python基础语法_第36张图片

2.10 continue 和break

python基础语法_第37张图片

3. 函数

3.1 函数的定义

len就是python内置的函数

python基础语法_第38张图片

类似于go,或者说go类似python?

 python基础语法_第39张图片

 如果有返回值,调用函数可以接收返回值

python基础语法_第40张图片

3.1.1 返回值的none的类型

如果函数没有return 数据,函数会返回一个  none,表示空

python基础语法_第41张图片

 3.2 变量在函数中的作用域

python基础语法_第42张图片

全局变量写在函数外。

python基础语法_第43张图片

局部变量写在函数里,脱离了函数立马失效

可以在函数体里定义全局变量。

python基础语法_第44张图片

在函数体内,局部变量如果和全局变量重名,会用局部变量的值。

python基础语法_第45张图片

但是我就想在内部修改全局变量

那就给局部变量 num  加上 global 定义,这样它就变成了外面的全局变量

python基础语法_第46张图片

4. 数据容器

4.1 list(有序,可重复)括号为[ ]

里面放的是元素,元素的类型可以不相同

list里也可以放list,属于是嵌套列表

python基础语法_第47张图片

 python基础语法_第48张图片

4.1.1 list的下标索引(可以反向索引)

正向索引,下标从 0,1,2....

python基础语法_第49张图片

 反向索引 

-1,-2,-3,从最后一个开始访问

python基础语法_第50张图片

 类似二维数组的访问形式,访问嵌套列表。

python基础语法_第51张图片

4.1.2 list的index方法(查找元素的下标是多少)

python基础语法_第52张图片

4.1.3 list的insert方法(在指定index位置插入元素)

python基础语法_第53张图片

4.1.4 list的追加append方法 (将单个元素到list的尾部)

4.1.5 list的extend方法(将容器内所有的元素加到list的尾部)

python基础语法_第54张图片

4.1.6 清空整个列表,clear

list.clear()

4.1.7 统计列表里某个元素出现的次数

list.count( 元素)

4.1.8 len(),查看列表的大小

4.1.9 使用while循环遍历list

  1. 得到list的len
  2. 下标访问list

python基础语法_第55张图片

 4.1.10 for 遍历list

在每次循环中,处理临时变量。

python基础语法_第56张图片

4.2 元组tuple(只可以读的list)括号为

python基础语法_第57张图片

python基础语法_第58张图片

元组同样可以根据下标索引取出元素

4.2.1 元组的方法(跟list一样)

python基础语法_第59张图片

while 和for 也是。python基础语法_第60张图片

4.3 字符串

python基础语法_第61张图片

字符串不支持修改

4.3.1 支持下标索引

python基础语法_第62张图片

4.3.2 查找特定字符串的下标索引

python基础语法_第63张图片

4.3.3 replace方法修改字符串(实际是新生成一个字符串)

python基础语法_第64张图片

4.3.4 split方法,根据字符切割字符串

切割完之后,返回值是一个list对象。

python基础语法_第65张图片

4.3.5 strip方法,删除字符串两端的字符

python基础语法_第66张图片

4.3.5 count方法,统计某个子字符串出现的次数,len字符串长度

python基础语法_第67张图片

4.4 数据容器的切片操作(目标为list,tuple,str)

步长就是每次取元素,走的路。

如果步长为2,那就隔一个元素再取。

我们会在切片完成后得到一个新的序列。

 python基础语法_第68张图片

4.4.1 步长为负数时,倒叙取元素

当步长为-1,直接反转字符串。

python基础语法_第69张图片

4.5 集合set(无序,不支持下标索引,不支持重复元素)定义{ }

python基础语法_第70张图片

myset=set()    定义一个空集合

set.add(),往里面添加元素。

set.remove(),移除元素

set.clear ()清空元素

4.5.1 pop方法,随机拿出一个元素(集合被拿出一个元素,会被修改)

python基础语法_第71张图片

4.5.2 求两个集合的差集difference,集合set1有,但是集合set2没有的

差集是一个新的集合set3

python基础语法_第72张图片

4.5.3 两个集合的并集union

python基础语法_第73张图片

4.5.4 for in 遍历set,len表示集合的大小

python基础语法_第74张图片

len() 统计set里元素的数量

4.6 字典(就是java的map)

里面存键值对。key和value 用冒号隔开

python基础语法_第75张图片

python基础语法_第76张图片

 4.6.1 根据key访问value,类似数组(key不能重复) 

字典[key]

python基础语法_第77张图片

4.6.2 字典可以嵌套,但是只允许value值是字典

python基础语法_第78张图片

 然后可以通过嵌套的多维key来访问 value

python基础语法_第79张图片

4.6.3 pop删除指定key的键值对,clear方法清空字典

python基础语法_第80张图片

 python基础语法_第81张图片

4.6.4 dict.key()方法,获得字典里全部的key

4.6.5 for in 遍历字典,得到是字典的key

4.7 数据容器的通用操作

python基础语法_第82张图片

4.7.1 list ,tuple,set 的通用操作

python基础语法_第83张图片

 4.7.2 容器的通用转换功能

python基础语法_第84张图片

如果是字典转list,tuple,set   value值都会被抛弃不要

字典转字符串,键值对会变成一个字符串  key:value

4.7.3 容器的排序功能

python基础语法_第85张图片

 排完序的结果都成了list对象。

对字典的排序,又丢失了value

4.7.4 字符串大小的比较(通过ascii码比较的)

 字符串之间可以直接用大于小于号比较python基础语法_第86张图片

小写的大于大写的,小写的排在后面

python基础语法_第87张图片

5. 函数进阶操作

5.1 函数的多返回值

写了return 只返回最先写的return

python基础语法_第88张图片

如果返回多个返回值,用逗号隔开。

同时接收函数返回值的时候,也要用多个变量接收

python基础语法_第89张图片

5.2 函数的传参

python基础语法_第90张图片

5.2.1 位置一对应的传参

python基础语法_第91张图片

 5.2.2 关键字传参

如果混了位置参数,位置参数必须在关键字前面。

关键字传参不用在乎先后顺序

5.2.3 缺省传参

如果某个参数的值没被传进来

那整个参数就取默认值

python基础语法_第92张图片

但是我们得在 定义函数的时候,赋予该参数默认值

python基础语法_第93张图片

5.2.4 不定长参数(不知道要传多少个参数进去)

用一个元组来接受,所有的参数都被  接收,然后封装成一个元组。

 用 * 号来接收

python基础语法_第94张图片

5.2.5 接收A=B类型的参数

用  ** 来接收

python基础语法_第95张图片

5.3 匿名函数

5.3.1 函数作为参数传递

python基础语法_第96张图片



5.3.2 lamada表达式

x,y 作为参数,:后面表示参数运算的逻辑

python基础语法_第97张图片

6.文件的编码

文件本质都是 0.1组成的,不同的解码方法可以解读成不同的数据。

不同的编码方法可以编译成不同的二进制组成。

编码格式有UTF-8, GBK,Big5

一般全球都通用UTF-8的编码格式

7 文件的读取(记得关闭文件)

用一个对象  f  来接收

python基础语法_第98张图片

最后一个方法可以自动关闭

python基础语法_第99张图片

 a :追加写

w:从头写,以前的内容删除

r:从头开始读文件

python基础语法_第100张图片

 7.1 r模式(读)

 7.1.1 文件对象的read方法

num是读取的字节数,如果没有传入该参数就默认全部读取。

python基础语法_第101张图片

7.1.2 readlines方法,读取所有行

 读取文件的全部行,封装进list里,list里的每个元素就是一行。

会读到 \n,换行符号

7.1.3 readline放啊,读取一行

读完一行,文件的指针就自动跳到下一行

7.1.4 for in  文件对象  (循环读取数据行)

python基础语法_第102张图片

7.2 w模式(写)

python基础语法_第103张图片

 flush的时候才会保存到硬盘,write只是写在内存的里。

close自带 flush功能python基础语法_第104张图片

7.3 a模式(追加写)

如果文件不存在,追加文件。

python基础语法_第105张图片

8.异常

8.1 捕获异常

else可以不写

python基础语法_第106张图片

except 里放 出现异常后的操作。

 python基础语法_第107张图片

8.1.1 捕获指定的异常

NameError,变量未定义错误

想知道有什么异常,可以自己在一个个试出来。

8.1.2 finally

python基础语法_第108张图片

 8.2 异常的传递性

嵌套的调用,可以在最外层捕获这个异常。

python基础语法_第109张图片

9.python 模块

 python基础语法_第110张图片

 as 可以给引进来的东西起别名

python基础语法_第111张图片

9.1 引入import

import *的时候,如果没定义 all变量,就引入所有,如果定义all变量,引入all变量

python基础语法_第112张图片

9.1.1 import的时候,可能会执行有些语句

如果该模块中,自己调用了自己的方法,我们导入该模块的时候,也会调用该方法

只有当前文件为 main 文件(我们在当前文件点run),才能执行 test(1,2) 这句话

python基础语法_第113张图片

10.python 包(管理模块)

右键 new 一个 Pythonpackage

python基础语法_第114张图片

10.1 安装第三方包

python基础语法_第115张图片

在cmd,pip 直接安装 

 python基础语法_第116张图片

可以在快的源下载

python基础语法_第117张图片

你可能感兴趣的:(学习)