大家好呀,由于 python 是非常重要的数据分析工具,因此这套课程也是从 python 的基础知识讲起的,后面还会学习一些文件操作、爬虫相关的东西。所以我们需要把 python 基础打扎实。接下来的一周左右时间都会是 Python 基础知识相关,学过的同学可以当做复习回顾,看看有没有自己忽略掉的知识点。
一、变量与赋值
1. 变量定义形式
变量名 = 数据
2. 常用的数据类型:
字符串(str)
整数(int)
浮点数(float)
布尔值(bool)
列表(list)
元组(tuple)
字典(dict)
集合(set)
3. 变量的命名规则
(1)变量名
由字母、数字、下划线组成,且不能以数字开头。
注意:不要使用关键字作为变量名。
# Python 中的关键字
['False', 'None', 'True', 'and', 'as', 'assert', 'async', 'await', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']
(2)变量命名方式
驼峰命名法:
- 大驼峰:每个单词首字母都大写:
PageNum
- 小驼峰:第一个单词首字母小写,其他单词首字母大写:
pageNum
下划线命名法:
- 单词都使用小写字母,用下划线连接:
page_num
4. 常用的数据类型转换函数
函数 | 说明 |
---|---|
int(x [,base ]) | 将x转换为一个整数,后面一个参数为进制,如 int('ff', 16) 结果为 255 |
float(x) | 将x转换为一个浮点数 |
complex(real [,imag]) | 创建一个复数*,real为实部,imag为虚部 |
str(x) | 将 x 转换为字符串 |
repr(x) | 将 x 转换为表达式字符串,返回结果是给 x 加个双引号 |
eval(str) | 用来计算在字符串中的有效Python表达式,并返回表达式结果 |
tuple(s) | 将序列 s 转换为一个元组 |
list(s) | 将序列 s 转换为一个列表 |
chr(x) | 将一个整数转换为一个Unicode字符 |
ord(x) | 将一个字符转换为它的ASCII整数值 |
hex(x) | 将一个整数转换为一个十六进制字符串 |
oct(x) | 将一个整数转换为一个八进制字符串 |
bin(x) | 将一个整数转换为一个二进制字符串 |
注*:我们把形如z=a+bi(a,b均为实数)的数称为复数,其中a称为实部,b称为虚部,i称为虚数单位。当z的虚部等于零时,常称z为实数;当z的虚部不等于零时,实部等于零时,常称z为纯虚数。
二、输入和输出
1. 输入和输出
# 输入
name = input ()
# 输出
print(name)
print("hello world")
print(100+100)
2. 格式化输出
# 格式化符号: %s, %d, %f, %x
# %s: 输出字符串
# %d: 输出int类型数字
# %f: 输出浮点数
# %x: 输出16进制数据
PI = 3.1415926
print("π的值是%.2f" %PI)
# %.2f 是保留两位小数
job = "数据分析师" money = 25000
print("%s的薪资是:%d" %(job,money))
三、运算符
1、算数运算符
Python支持以下几种运算符:
(假设:x=10, y=20, z = 25)
运算符 | 描述 | 实例 |
---|---|---|
+ | 加 | x + y → 30 |
- | 减 | 负数或减法,x - y → -10 |
* | 乘 | 两个数相乘或是返回一个被重复若干次的字符串,x * y → 200 |
/ | 除 | y / x → 2 |
// | 取整除 | 返回商的整数部分,9//2 → 4,9.0//2.0 → 4.0 |
% | 取余 | 返回除法的余数, z % x → 5 |
** | 指数 | x**y → 100000000000000000000 |
混合运算时,优先级顺序为:**
高于 *
/
//
%
高于 +
-
,为了避免歧义,建议使用 ()
来处理运算符优先级。并且,不同类型的数字在进行混合运算时,整数将会转换成浮点数进行运算。
2. 赋值运算符
运算符 | 描述 | 实例 |
---|---|---|
= | 赋值运算符 | 把 = 号右边的结果 赋给 左边的变量,如 num = 1 + 2 * 3,结果num的值为7 |
# 单个变量赋值
num = 1000
# 多个变量赋值
num1, f1, str1, b1 = 100, 3.14, "hello" ,True
print(str1)
3. 复合赋值运算符
运算符 | 描述 | 实例 |
---|---|---|
+= | 加法赋值运算符 | z += x 等效于 z = z + x |
-= | 减法赋值运算符 | z -= x 等效于 z = z - x |
*= | 乘法赋值运算符 | z *= x 等效于 z = z * x |
/= | 除法赋值运算符 | z /= x 等效于 z = z/ x |
%= | 取模赋值运算符 | z%= x 等效于 z = z% x |
**= | 幂赋值运算符 | z** = x 等效于 z= z**x |
//= | 取整除赋值运算符 | z //= x 等效于 z = z // x |
4. 比较(关系)运算符
Python语言支持比较运算符:
(假设:x 为 10, y为 20)
运算符 | 描述 | 实例 |
---|---|---|
== | 等于 - 比较对象是否相等 | (x == y) 返回 False |
!= | 不等于 - 比较两个对象是否不相等 | (x != y) 返回 True |
> | 大于 - 返回x是否大于y | (x > y) 返回 False |
< | 小于 - 返回x是否小于y。所有比较运算符返回1表示真,返回0表示假。 | (x < y) 返回 True |
>= | 大于等于 - 返回x是否大于等于y | (x >= y) 返回 False |
<= | 小于等于 - 返回x是否小于等于y | (x <= y) 返回 True |
5. 逻辑运算符
Python语言支持逻辑运算符:
(假设:变量 x 为 True, y 为 False)
运算符 | 描述 | 实例 |
---|---|---|
and | 布尔"与" | x and y 返回False |
or | 布尔"或" | x or y 返回 True |
not | 布尔"非" | not x 返回False |
四、if 语句
1. if 条件判断:
age = 20
if age >= 18:
print('your age is', age)
print('adult')
2. if ... else 条件判断:
age = 6
if age >= 18:
print('你的年龄', age)
print('成年')
else:
print('你的年龄', age)
print('未成年')
3. if...elif...else 条件判断:
age = 6
if age >= 18:
print('成年')
elif age >= 7:
print('青少年')
else:
print('儿童')
可以有多个 elif:
if <条件判断1>:
<执行1>
elif <条件判断2>:
<执行2>
elif <条件判断3>:
<执行3>
else:
<执行4>
注意: if 语句执行时是从上往下判断,如果在某个判断上是 True ,把该判断对应的语句执行后,就会忽略掉剩下的 elif 和 else,例如:
age = 20
if age >= 7:
print('青少年')
elif age >= 18:
print('成年')
else:
print('儿童')
上述代码执行结果是“青少年”,因为满足第一个条件,后面的条件就被忽略了,因此在设置条件的时候一定要把各个语句的判断条件设置成相互独立的集合,不要存在交集。
五、循环
1、while 循环
while循环主要用于在满足一定条件的情况下执行重复任务。
语法:
while 条件:
条件满足时,做的事情1
条件满足时,做的事情2
条件满足时,做的事情3
...(省略)...
例如输出100条 helloworld:
i = 1
while i <=100:
print('hello Python')
i= i + 1
2. for 循环
for 循环主要用于遍历。
遍历字符串:
names = ['Mike', 'HuaHua', 'Jay']
for name in names:
print(name)
输出结果:
Mike
HuaHua
Jay
所以 for x in ...
循环就是把每个元素代入变量 x ,然后执行缩进块的语句。
变量累加:
sum = 0
for x in [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]:
sum = sum + x
print(sum)
这里的 [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] 也可以写成 range(1,11)。
3. range() 函数
range() 函数的语法是 range(start, end, scan)
,start 是开始数,end是结尾数,scan是跳跃间距,默认从0开始,取开头不取结尾,因此从1到10就写成 range(1,11)
,如果是取从 1-10 的奇数就写成 range(1,10,2)
。如果写成 range(10)
,就代表从 0 到 9 这 10 个数。
4. break
break 语句的作用是可以提前退出循环。
例如,我们希望在 m 大于 10 的时候就提前退出循环:
m = 1
while m <= 50:
if m > 10:
# 当m = 11时,条件满足,执行break语句
break
# break语句会结束当前循环
print(m)
m = m + 1
print('END')
5. continue
在循环过程中,也可以通过 continue 语句,跳过当前的这次循环,直接开始下一次循环。
如果我们想打印 1-10 中的奇数,可以用 continue 语句跳过某些循环:
n = 0
while n < 10:
n = n + 1
if n % 2 == 0:
# 如果n是偶数,执行continue语句
continue
# continue语句会直接继续下一轮循环,后续的print()语句不会执行
print(n)