I 准备工作
1.1 环境配置
- 安装Python - 解释器,将python代码转换成机器可以识别的语言
- 选用Python IDE:Pycharm、VScode - 帮助用户使用该语言开发时提高效率的工具
- Anaconda:管理python相关的运行环境和工具包的下载和安装
1.2 简介
由 Guido van Rossum 在八十年代末和九十年代初,在荷兰国家数学和计算机科学研究所设计
结合解释性,编译性,互动性,面向对象的语言
Python 2.x 与Python 3.x 的区别
II 基础语法
2.1 基础语法
-
标识符命名规则与C、C++基本相同
-
同一行显示多条语句,以分号隔开
print("hello"); print("world!")
-
行与缩进:不用
{ }
控制模块,而用缩进数量 -
多行语句:斜杠
\
将语句分为多行sum = a + \ b + \ c
-
注释:①语句末:以
#
开头;②多行注释:用三引号'''
或"""
-
print输出:默认换行
2.2 语句
在条件语句和循环语句的关键字后无需括号,需冒号
条件语句
-
条件:True - 非0和非空值;False - 0或null
-
关键字:if - elif - else
-
用缩进来区分表示同一范围
-
python不支持switch语句
循环语句
- 循环使用else语句:while…else在循环条件为false时执行else
为什么要有else的功能?[for或while循环后面加else的妙用](…[Python] for或while循环后面加else的妙用_江南蜡笔小新-CSDN博客_for循环加else.url)
-
循环控制语句
①
break
②continue
③pass
不做任何事情,一般用做占位语句,保持程序结构的完整性
2.3 运算符
支持的运算符类型:
①算术运算符 ②比较运算符 ③赋值运算符 ④逻辑运算符 ⑤位运算符 ⑥成员运算符 ⑦身份运算符
算术运算符
运算符 | 意义 | 示例 |
---|---|---|
x**y | x的y次幂 | 2**5=32 |
x//y(floor除法) | 向下取整 | 9//24; -9//2-5 |
逻辑运算符
运算符 | 意义 | 示例 |
---|---|---|
x and y | 与;x为False->False;否则->y | (10 and 20) -> 20 |
x or y | 或;x为非0->x;否则->y | (10 or 20) -> 10 |
not x | 非;调转True和False | (not(10 and 20)) -> False |
and/or/not的优先级低于> <
if (num >= 0 and num <= 5) or (num >= 10 and num <= 15):
...
# 判断值是否在0~5或者10~15之间
成员运算符
in
和 not in
: 实例为字符串/列表/元组
list_A = [1,2,3,4,5]
a = 2
if in list_A:
print('变量a在list_A中')
身份运算符
is
和 is not
:判断两标识符是否引用自同一对象,同 id(x) == id(y)
[Python is运算符](资料\Python is运算符.url)
III 变量与数据类型
3.1 变量
-
变量赋值不需类型声明,解释器会自动决定数据类型
-
使用前必须赋值,赋值后变量才被创建
-
类型属于对象,变量是没有类型的;变量是对象的一种引用
python类型属于对象,不属于变量 python类型属于对象,不属于变量_chenjinyu的专栏-CSDN博客.url)
可变性
可变变量类型 | 不可变变量类型 |
---|---|
列表,字典 | 数字,字符串,元组 |
改变不可变变量的值相当于:①分配新的内存空间给新的值->②将原来的名称指向新的值
[Python中的不可变对象类型与可变对象类型](资料\Python中的不可变对象类型与可变对象类型 - listenviolet - 博客园.url)
3.2 Number 数字
基本概念
-
种类:①int(无限大小) ②float ③complex复数
-
复数:
a+bj
或complex(a,b)
表示,a(实部)和b(虚部)为浮点型[Python 复数类型complex详解](资料\数据类型\Python 复数类型complex详解.url)
-
del
语句:解除number对象引用del a, b, c
number类型转换
类型转换函数 | 意义 |
---|---|
int(x [, base ]) | 转换为整数 |
float(x ) | 转换为浮点数 |
complex(real, imag) | 创建复数 |
str(x ) | 转换为字符串 |
eval(str ) | 计算在字符串中的有效Python表达式,并返回一个对象 |
相关函数与常量
- 常用内置函数
abs | ceil | floor | exp | fabs |
---|---|---|---|---|
绝对值 | 上入整数 | 下舍整数 | e的x次幂 | 绝对值 |
max | min | cmp | sqrt | log |
---|---|---|---|---|
最大值 | 最小值 | 比较大小 | 平方根 | 取对数 |
-
math模块
数字常量:①
math.pi
②math.e
-
random模块:随机数函数
choice(seq) | random() | seed() | uniform(x,y) |
---|---|---|---|
从序列中随机抽取元素 | [0,1)内任意实数 | 改变随机数生成种子 | [x,y]内的随机实数 |
3.3 Sequence 序列
序列通用操作
连接 | 重复 | 索引 | 切片 | 检查成员 | 长度 | 比较 | 迭代 |
---|---|---|---|---|---|---|---|
seq1 + seq2 | seq * n | seq[n] | seq[x:y:z] | n in / not in seq | len(seq) | cmp(seq1, seq2) | for n in seq |
[Python 序列通用操作介绍](…\Python 序列通用操作介绍 - melonstreet - 博客园.url)
3.3.1 String 字符串
基本性质
-
表示:单引号/双引号/三引号(
"""something"""
或'''something'''
),三引号可由多行组成paragraph = """一个 段落"""
-
不支持单字符,一个字母也是字符串
运算
- 序列型对象共有的运算功能
- 字符串独有的运算符
符号 | 意义 | 示例 |
---|---|---|
r(或R) | 原始字符串:所有的字符串都是直接按照字面的意思来使用,没有转义特殊或不能打印的字符 | print(r'\n') 的输出结果为”\n “ |
% | 格式字符串:使用与 C 中 sprintf 函数一样的语法 | print("My name is %s and weight is %d kg!" % ('Zara', 21) ) |
字符串方法(string模块)
方法 | 解释 |
---|---|
string.capitalize() | 第一个字符大写 |
string.count(str, beg=0, end=len(string)) | 统计字符串里某个字符或子字符串出现的次数 |
str.format() | 格式化字符串 |
count函数:[Python count() 方法](…\Python count() 方法 - 菜鸟教程.url)
format函数:[Python format 格式化函数](…\Python format 格式化函数 - 菜鸟教程.url)
3.3.2 List 列表
基本性质
-
作为一个方括号
[ ]
内的逗号分隔值出现 -
数据项不需要具有相同的类型
-
用
del
语句删除单个元素list1 = ['physics', 'chemistry', 1997, 2000] del list1[2]
列表方法(list模块)
方法 | 解释 |
---|---|
list.append(obj) list.pop() | 在末尾添加新对象;返回并移除列表中的最后一个元素 |
list.count(obj) | 统计元素出现次数 |
list.remove(obj) | 移除列表中某个值的第一个匹配项 |
list.reverse() | 反向列表中元素 |
list.insert(index,obj) | 将对象插入列表(index所指向对象的前面) |
3.3.3 Tuple 元组
-
与列表唯一不同在于不能修改
元素不得删除,但可以
del
删除整个元组 -
用小括号
( )
表示
[Python 列表和元组的详细区别](资料\数据类型\Python 列表和元组的详细区别.url)
3.4 Dictionary 字典
概念
-
性质:可变容器类型,无序集合,可储存任意类型对象
-
语法:
dict_name = { key1: value1, key2: value2, ...}
①键需唯一,值不需唯一 ②值可取任何数据类型,键必须为不可变类型
-
意义:通常用于存储描述一个物体的相关信息
[Python 字典如何使用?有哪些应用场景?](资料\数据类型\Python 字典如何使用?有哪些应用场景? - 知乎.url)
操作
-
删除某一键值对:
del dict_name['KeyName']
-
访问值:
dict_name['KeyName']
,返回相应值
方法
方法 | 解释 | 方法 | 解释 |
---|---|---|---|
dict.keys() | 所有key列表 | dict.clear() | 清空字典 |
dict.values() | 所有value列表 | dict.pop(key) | 相当于del dict_name[‘KeyName’] |
dict.items() | 所有(key, value)元组列表 | dict.get(key) | 相当于dict_name[‘KeyName’] |