终身高级VIP会员
- 资源币
- 11472
- 积分
- 4971
- 贡献
- 0
- 在线时间
- 2065 小时
- 注册时间
- 2015-4-20
- 最后登录
- 2024-7-9
|
2020年最新 博学谷Python基础班(共9天)
一下是笔记
day01
注释
单行注释 #
多行注释 """ """ ''' '''
变量
变量的类型
int float bool str list dict tuple
标识符的命名规则
1 见名知意
2 字母 数字 下划线组成 不能以数字为开头
3 严格区分大小写
4 不能和关键字重复
输出
print函数
1 print函数会自动换行
2 print("", end="") 去除换行
输入
input函数
1 阻塞等待数据的输入
2 接受的数据默认是字符串类型
运算符
// 取整除
% 取余
** 指数
数据类型的转化
int(),float(), str(), list(), tuple()
int("abc")不可以成功的
int("123")可以成功的
day02
比较运算符
= 赋值
== 比较是否相等
!= 判断是否不等
逻辑运算符
and 多个条件同时成立 整体成立
or 多个条件只要有一个成立 整体成立
not 对条件取反
if_else
if 条件成立:
xxx
else:
条件不成立做xxx
if_elif_else
if 条件1成立:
xxx1
elif 条件2成立:
xxx2
else:
条件1,2都不成立
如果条件1成立了 条件2和else都不会执行了 只执行一次
if嵌套
前提条件(想要给女朋友买花 首先你得有一个女朋友)
随机整数
import random
random.randint(0,10) 取值范围是(0~10)全部取到
while循环
while num > 0:
num += 1
while循环一定要有计数器 否则会产生死循环
for循环
for i in range(0,3):
i是一个临时变量 只在for循环内部使用
range(0,3):左闭右开区间 0 1 2
break
终止循环的执行
continue
中断当前的循环 继续下次循环
day03
字符串
不可变的数据类型
格式化输出
"%d, %s" % (age,name)
f"{age},{name}"
下标
a[0]
从0开始,0代表的是第一个
切片
a = "abcdef"
a[起始:终止:步长]
1 左闭右开区间 起始位置的数据会取到 结束位置的数据取不到
2 步长+ : 从起始位置<向后>去找结束位置
3 步长- : 从起始位置<向前>去找结束位置
4 从起始位 找 结束位置 找到了才有数据 找不到就是空
5 a[:] 取整个字符串
6 a[::-1] 逆置字符串
字符串的常见操作
index 找到子字符串返回下标 没找到会报错
find 找到子字符串返回下标 没找到返回-1
count 统计子字符串出现的次数
replace 进行字符串的替换
split 对字符串进行分割
join 进行字符串的拼接
列表
可变的数据类型
list()
[]
列表的相关操作
增
append 在列表的末尾添加数据
extend 把两个列表融合
insert 在指定的位置插入数据
删
pop 删除列表末尾的数据
remove 根据指定的数值删除数据
del 根据下标删除
改
a[0] = "123"
查
in
not in
index
count
列表的嵌套
a = [[1,2],[1,2]]
a[0][0] ==> 1
元组
元组中的数据不可修改 不可变的数据类型
查
in
not in
index
count
字典
以 key:value 对组成的
1 key不可变的数据类型
value可以是任何数据类型
2 key是不可重复的
字典的相关操作
keys 获取字典的所有的key值
values 获取字典的所有的value值
items 获取字典的key-value对 [(key,value),(key,value)]
len 获取字典 列表 字符串 元组 的长度
增
字典["新的key值"] = xxx
删
del 字典[key]
clear() 清空字典
改
字典["老的key值"] = xxx
查
字典["key值"]
公共方法
len() 求长度 范围: 字典 列表 元组 字符串
max() 最大值 范围: 字典 列表 元组 字符串
min() 最小值 范围: 字典 列表 元组 字符串
del 删除 范围: 字典 列表 元组 字符串
+ 范围: 列表 元组 字符串
* 范围: 列表 元组 字符串
day04
函数
1 封装代码 提高代码的复用率
2 先定义def func(): 后调用func()
函数文档说明
函数名下面 """ 函数说明 """
help(函数名)
函数参数
def func(a,b):
pass
func(1,2)
形参和实参 一一对应的关系
定值参数
def func(a,b=10):
pass
func(1,2)
定值参数需要写到参数的最右边
返回值
return
1 返回值是需要接受的 如果没有接受 返回值就没用了
2 如果只是使用了return 没有具体的返回值 返回的就是None
3 没有使用return 默认也是返回None
4 return代表了函数的结束 return以下代码不再执行
局部变量
函数内部定义的变量就是局部变量
使用范围: 只能在定义它的函数内部使用
全局变量
在函数外部定义的变量就是全局变量
使用范围: 可以在函数内部也可以在函数的外部使用
注意
1 当函数内可以使用局部变量和全局变量的时候 优先使用局部变量
2 如果想在函数内部修改全局变量 global
变量值的交换
a,b = b,a
函数的多个返回值
return a,b 接受这个返回值需要用元组来接受
函数的多值参数
*args
获取多余的单值参数 以元组的形式存储这些参数
**kwargs
获取多余的key-value参数 以字典的形式存储这些参数
拆包
a,b = [1,2] ==> a=1 , b=2
a,b = {"age":1,"name":2} ==> a="age" , b = "name"
引用
id()函数可以查看变量的地址编号
对于不可变类型的数据没有什么影响
对于可变的数据类型
影响<1>
a = b = [1,2]
修改a就等于修改了b. a,b是同一个内存空间
a = [1,2]
b = [1,2]
修改a不会影响b. a,b不是同一内存空间
影响<2>
a = [1,2]
a += a
a.append(a) a的内存地址空间是不会改变的
a = a + a
a = [1,2,1,2] a的内存地址发生改变了
可变类型
列表,字典的value可以是可变类型
不可变类型
元组 数字 字典的key值 字符串
day05
递归函数(了解)
函数自己调用自己
递归函数一定要设置函数结束条件
匿名函数
作用: 可以简化函数的定义
无参数
lambda :10 + 20
相当于
def func():
return 10 + 20
有参数
lambda x,y:x + y
相当于
def func(x,y):
return x + y
匿名函数中不能使用 if 语句、while 循环、for 循环, 只能编写单行的表达式,或函数调用
匿名函数中返回结果不需要使用 return, 表达式的运行结果就是返回结果
列表推导式
作用: 快速生成一些比较复杂的列表
demo1
my_list1 = [x for x in range(0,10)]
my_list1 ==> [0,1,2,3,4,6,7,8,9]
demo2
my_list2 = [x for x in range(0,10) if x%2 == 0]
my_list2 ==> [0,2,4,6,8]
demo3
my_list3 = [(x,y) for x in range(0,2) for y in range(0,2)]
my_list3 ==> [(0,0),(0,1),(1,0),(1,1)]
集合
特点: 数据不重复
定义一个集合
a = set()
a = {1,2,3}
day06
打开文件 open()
参数1 文件的路径
参数2 文件的打开方式
r 读取数据的方式打开文件
w 写入数据的方式打开文件(覆盖原有的文件内容)
如果文件不存在 直接重新创建一个文件
a 追击数据的方式打开文件(把数据追加到原有内容后)
如果文件不存在 直接重新创建一个文件
读取操作 read()
参数 读取数据的数量 字节为单位
写入数据 write()
关闭文件 close()
注意:
文件中获取的数据 默认是str类型
写入文件的数据 默认是str类型
文件的相关操作os模块
import os
重新命名
rename(需要修改的文件名, 新的文件名)
删除文件
remove(待删除的文件名)
创建文件夹
mkdir("文件夹的名字")
删除文件夹
rmdir("文件夹的名字")
获取路径信息
getcwd()
修改所在路径
chdir()
显示所有的文件名和文件夹名
listdir()
|
|