Python基础知识
学前提醒
一定记得要自己动手编程试试哦~
Python简介
- 语言特点:面向对象、解释型、高级计算机程序设计语言
- ①面向对象:使用函数与类(在后面拓展中有讲)的方式编程解决问题
- ②解释型:在运行时,首先要将每条语句进行检查编译成机器语言(即0与1)再进行自顶而下的运行
- ③优缺点:编写容易但运行速度较慢
- Python Shell:交互式解释器,输入一条执行一条,输入的语句不会被保存
- 编辑器:输入的语句不会立刻被执行,编写完成保存并运行时才会被执行
- 历史(课外阅读):Python从诞生至今经历了一次大的更新换代,即Python2到Python3的飞跃。由于Python2功能的不完善,运行速度慢,维护困难等缺点,Python的创始人在C语言的基础上重新设计了Python3,与原先Python2在语法上有较大的差异,而原先的Python 2也渐渐淡出了历史舞台.我们学习的也都是Python3的语法.
- 目前较稳定的Python版本:Python 3.8,Python3.9,Python3.10,Python3.12
- 笔者的环境是Python3.12.0
输入与输出语句
- 输入语句:
input()
在括号内可以输入提示语- 注意通过
input()
得到的是字符串
- 注意通过
|
|
- 输出语句:
print()
括号内可以传入多个要输出的值- 注意:当出现运算符+时,请一定当心加号两边的数据类型是否一致,该如何转化
|
|
123456 <class 'str'>
数据类型
|
|
|
|
|
|
|
|
运算符与表达式
- 表达式:由数字、运算符、数字分组符号、自由变量和约束变量等以能求得数值的有意义排列方法所得的组合
- 运算符:
算术运算符
注:若C=a%b, 当b>0时C∈[0,b) 当b<0时C∈(b,0]
关系运算符
注:链式比较 a<=b<=c ⇔ a<=b and b<=c
逻辑运算符
注:if not flag: ⇔ if flag==False:
数据结构:(也是数据类型)
- 字符串(关于转义字符可转到“关于格式化输出”)
- 索引:从零开始的标号
- 索引取值
- 切片:格式:
s[start:end:step]
|
|
e
string index out of range
ello
- 速会切片:
提示:若为负索引,将其加
len(s)
变为正索引
小技巧:
①判断是否为空切片: 判断 (end-start) /step
是否大于 0(< 0为空)
②切片中的元素个数(可用来检查)n=(end-start)//step
- 列表
- 索引、切片与字符串相同
- 列表方法
|
|
l=['A', 'B', 'C']
l=['A', 'B', 'C', 'D']
l=['A', 'B', 'C', 'D', 'E']
l=['A', 'B', 'C', 'D', 'E', 'F']
l=['A', 'B', 'C', 'D', 'E'], del_val='F'
l=['A', 'B', 'C', 'E'], del_val='D'
l=['A', 'B', 'C']
字典(也叫哈希表(Hash Table))
键-值对(可以有相同的值): {key1:valuel, key2:value2,…}
- 键:可以是字符串、元组、整型、浮点型 不能是列表、字典(它们是unhashable,不能被哈希化的)
- 值:可以是任何类型
取值:<字典名>[<键名>]
- 键名不在字典中会引发KeyError
字典方法
|
|
dict_keys(['A', 'B', 'C'])
---------
A
B
C
---------
dict_values([10, 11, 12])
---------
10
11
12
---------
dict_items([('A', 10), ('B', 11), ('C', 12)])
---------
A 10
B 11
C 12
---------
1
10
算法结构
- 顺序结构
|
|
a=3
分支结构(if语句):
所有的分支结构只会运行至多1个(可能不运行)
循环结构:(for语句与while语句)
- while语句中注意循环控制变量的值一定要有初值且一定在循环中被改变
- while True循环一定有break语句(该情况下True就是True,不能是等于True的其它变量)
- break语句:结束当前整个循环
- continue语句:进入下一趟循环
|
|
(1, 1) (1, 2) (1, 3) (1, 4)
---------
(1, 1) (2, 1) (3, 1) (4, 1)
---------
(1, 1) (1, 2) (3, 1) (3, 2)
---------
(1, 1) (2, 1) (3, 1)