1、Python 的故事
Python 由 Guido van Rossum 于 1989 年底(为打发圣诞节假期)发明,Python名字来自Guido喜欢的电视剧Monty Python’s Flying Circus ——巨蟒剧团之飞翔的马戏团。在1991年,第一个python编译器诞生,此编译器利用C语言实现,能调用C语言库。随后在Guido及其同事等人的改进,将Python从2.0发展到Python3.0,但是python3不能兼容python2,在2020 年 1 月 1 日, 停止 Python 2 的更新。目前我们的教学或者科研通常使用Python3。
目前我们教学、学习和应用都是基于python3。
python比其他语言更为简洁、简单,如下为各个语言输出“heelo world!”为例表明,还有人将各语言创始人的发量进行对比,凸出经典话语——“人生苦短,我用Python”。
(1)C/C++
#include
int main()
{
printf("Hello, World");
return(0);
}
#include
int main()
{
std::cout << "Hello World";
return 0;
}
(2)Java
public class Main {
public static void main(String[] args) {
System.out.println("Hello, World!");
}
}
(3)python
print ("Hello, World")
如今,python应用广泛,web应用开发、自动化运维、人工智能领域、网络爬虫、科学计算、游戏开发等等。
2、 基础内容
中文建议参考菜鸟教程或者W3Cschool中的python教程,网页附带编译器,可以边看知识点边实时编写程序,但如果需要调试还需在PC端安装编译环境,单步进行调试。
如果希望阅读原版内容,请移步python的官方文档查看,目前python更新到python3.11(2022/10/25)。
(1)编译环境
-
第一种情况:如果是零基础小白,只是为了学习python的基础知识,建议直接安装 Thonny
就可以进行编程了,因为Thony中内置了python的编译器,而且在编程过程中查看变量值很方便。 -
第二种情况:为了后续的学习,需要进行一些工作、学习方面的应用,建议单独安装python编译环境。
1)安装环境可以参考菜鸟教程中关于安装环境搭建的教程,虽然python官网中版本信息目前有一些改变,但大致步骤没有变化,在python官网去下载自己需要的python3.X的版本,一般选择稳定版本。
2)安装好python的编译器后,python有一个自带的IDLE可供用户编程(交互式的),如果想有集成式的开发环境,可以使用Pycharm、VSCode等工具,其中PyCharm是公司研发,专业版需要付费使用,安装
社区版 足矣。 -
第三种情况:不想在PC端进行程序编写,想在Web端进行,可以尝试安装Jupyter。
使用Jupyter Notebook,首先也需要在电脑上安装python编译环境;
安装AnaConda,然后安装Jupyter Notebook,直接打开即可,相关步骤可参考Jupyter
Notebook介绍、安装及使用教程。
(2)基础语法
代码注释:不需要进行编译的内容,对程序解释说明,方便再次编辑
Python 中单行注释以 # 开头,多行注释采用三对单引号(‘’')或者三对双引号(“”")将注释括起来。
#这是单行注释
"""
这是多行注释
这是多行注释
"""
'''
也可以用三个单引号来进行多行注释
'''
# 第一个注释
print ("Hello, Python!") # 第二个注释
代码缩进:Python 最具特色的就是使用缩进来表示代码块,不需要使用大括号 { }。缩进的空格数是可变的,但是同一个代码块的语句必须包含相同的缩进空格数。
if True:
print ("Answer")
print ("True")
else:
print ("Answer")
print ("False") # 缩进不一致,会导致运行错误
1)标识符
给变量起名字,在python中的基础要求,还有不能为 关键字(保留字)。
-
标识符的其他的部分由字母、数字和下划线组成,不能包含空格、@、% 以及 $ 等特殊字符
-
第一个字符必须是字母表中字母或下划线 _ 。
正确范例
UserID
name
mode12
user_age
错误范例
4word #不能以数字开头
try #try是保留字,不能作为标识符
$money #不能包含特殊字符
- 标识符对大小写敏感。也就是说,两个同样的单词,如果大小格式不一样,多代表的意义也是完全不同的
number = 0
Number = 0
NUMBER = 0
- 在 Python 3 中,可以用中文作为变量名,非 ASCII 标识符也是允许的了。(但是不建议大家这样尝试)
简单地理解,标识符就是一个名字,就好像我们每个人都有属于自己的名字,它的主要作用就是作为变量、函数、类、模块以及其他对象的名称。
在标识符命名时建议让变量具有一定的实际意义,如在计算次数时用count或者time,能够看见这个变量名就明白变量所代表的含义。
详尽的python中命名规范可以参考。
2)关键字(保留字)
关键字 | 说明 |
---|---|
and | 逻辑运算符 |
as | 创建别名 |
assert | 用于调试 |
break | 中断循环语句的执行 |
class | 定义一个类 |
continue | 跳出本次循环,断续执行下一次循环 |
def | 定义功能 |
del | 删除变量或序列的值 |
elif | 条件语句,与if、else结合使用 |
else | 在条件语句中使用,与if、elif结合使用。也可用于异常和循环语句 |
except | except 包含捕获异常后的操作代码块,与try、finally 结合使用 |
False | 布尔类型的值,表示假,与True相反 |
finally | 用于异常语句 ,出现异常后,始终要执行finally 包含的代码块,与try、except 结合使用 |
for | for循环语句 |
from | 用于导入模块,与import 结合使用 |
global | 定义全局变量 |
if | 条件语句,与else、elif结合使用 |
import | 用于导入模块,与from结合使用 |
in | 判断变量是否在序列中 |
is | 判断变量是否为某个类的实例 |
lambda | 定义匿名函数 |
None | None比较特殊,表示什么也没有,它有自己的数据类型- NoneType |
nonlocal | 声明非局部变量,用于标识外部作用域的变量 |
not | 用于表达式运算,逻辑非操作 |
or | 用于表达式运算,逻辑或操作 |
pass | 空的类、方法或函数的占位符 |
raise | 异常抛出操作 |
return | 用于从函数返回计算结果 |
True | 布尔类型的值,表示真,与False相反 |
try | try包含可能会出现异常的语句,与except、finally 结合使用 |
while | while循环语句 |
with | 简化Python的语句 |
yield | 要结束一个函数,返回一个生成器,用于从函数依次返回值 |
3)数据类型
- 数值
Python3 支持 int、float、bool、complex(复数)。
整型(int) - 通常被称为是整型或整数,是正或负整数,不带小数点。Python3 整型是没有限制大小的,可以当作 Long 类型使用,所以 Python3 没有 Python2 的 Long 类型。布尔(bool)是整型的子类型。
浮点型(float) - 浮点型由整数部分与小数部分组成,浮点型也可以使用科学计数法表示(2.5e2 = 2.5 x 10^2 = 250)
复数( (complex)) - 复数由实数部分和虚数部分构成,可以用a + bj,或者complex(a,b)表示, 复数的实部a和虚部b都是浮点型。
- 字符串
字符串是 Python 中最常用的数据类型。我们可以使用引号( ’ 或 " )来创建字符串。创建字符串很简单,只要为变量分配一个值即可。例如:
var1 = 'Hello World!'
- 列表
表是最常用的 Python 数据类型,它可以作为一个方括号内的逗号分隔值出现。
列表的数据项不需要具有相同的类型
创建一个列表,只要把逗号分隔的不同的数据项使用方括号括起来即可。
列表的操作
list1 = ['Google', 'Runoob', 1997, 2000]
list2 = [1, 2, 3, 4, 5 ]
list3 = ["a", "b", "c", "d"]
list4 = ['red', 'green', 'blue', 'yellow', 'white', 'black']
- 元组
Python 的元组与列表类似,不同之处在于元组的元素不能修改。
元组使用小括号 ( ),列表使用方括号 [ ]。
元组创建很简单,只需要在括号中添加元素,并使用逗号隔开即可。
元组的操作
>>> tup1 = ('Google', 'Runoob', 1997, 2000)
>>> tup2 = (1, 2, 3, 4, 5 )
>>> tup3 = "a", "b", "c", "d" # 不需要括号也可以
- 集合
集合(set)是一个无序的不重复元素序列。
可以使用大括号 { } 或者 set() 函数创建集合,注意:创建一个空集合必须用 set() 而不是 { },因为 { } 是用来创建一个空字典。
集合的操作
>>> basket = {'apple', 'orange', 'apple', 'pear', 'orange', 'banana'}
>>> print(basket) # 这里演示的是去重功能
{'orange', 'banana', 'pear', 'apple'}
>>> 'orange' in basket # 快速判断元素是否在集合内
True
>>> 'crabgrass' in basket
False
- 字典
字典是另一种可变容器模型,且可存储任意类型对象。
字典的每个键值 key=>value 对用冒号 : 分割,每个对之间用逗号(,)分割,整个字典包括在花括号 {} 中
字典的操作
tinydict = {'Name': 'Runoob', 'Age': 7, 'Class': 'First'}
print ("tinydict['Name']: ", tinydict['Name'])
print ("tinydict['Age']: ", tinydict['Age'])
运算符与表达式
相关操作可详细查看。
- 算术运算符与算术表达式
- 比较运算符与表达式
- 赋值运算符与表达式
- 逻辑运算符与表达式
- 运算符优先级