文章目录
第一节:关于Python
Python的诞生
1990年由新西兰人Guido van Rossum所创建,起名源于英国戏剧“Monty Python’s flying circus”;
主要版本有Python2和Python3,后者并不兼容前者,一些主流的框架已放弃对Python2的支持;
Python的特点
- 简洁优美,易于学习,因此受到热捧,并且广泛被作为编程的入门语言使用;
- 胶水语言,由于其简洁的特性和受追捧的程度,C和Java都为其提供了大量的类库支持,使得一个以Python为主要编程语言的工程,可以引入和调用大量C以及Java的类库,因此Python被称为是“胶水语言”;
- 面向对象,Python是面向对象的语言;
- 脚本语言,Python是一门脚本语言,由Python解释器逐行解释并执行;
有哪些运用领域?
- Web开发;
- 爬虫程序开发;
- 数据挖掘;
- 机器学习(人工智能);
- 少儿编程;
由于有C类库的支持,理论上Python是可以做任何事情的
本文来自 水木·圳烜 的CSDN 博客 ,全文地址请点击:https://blog.csdn.net/u010986776/article/details/79391716?utm_source=copy
第二节:Python的开发环境
下载和安装Python解释器
官方解释器下载地址:https://www.python.org/downloads/windows/
使用Python首先我们要接触Python的解释器,这里我们选择一个Python3的版本进行安装,Python2已经逐渐过时,这里不做讨论;
按照流程进行安装,安装过程中注意勾选【将python解释器路径添加到系统环境变量的选项】(也可以安装完成后手动将python.exe所在的路径);
在cmd命令行中进行编程
如在正常成功安装了,那么可以在任意位置打开命令行,执行python命令,即输入Python
,即可进入python编程环境;
输入代码print("hello world!")
,可以发现命令行立即进行了输出;
使用解释器解释并执行HelloWorld程序
- 在桌面建立hello.py文件,代码如下:
import time
print("hello world!")
time.sleep(3)
print("hello china!")
- 在桌面shift+右键,打开cmd命令窗口,执行命令:
python hello.py
,就会神奇地发现,命令窗口输出“hello world!”,3秒后再输出”hello china!”
下载和安装集成开发环境PyCharm
- PyCharm是目前最流行的Python集成开发环境;
- 官方下载地址:http://www.jetbrains.com/pycharm/download/previous.html
- 按照流程指引进行安装;
- 安装完后,配置Python解释器位置;
在PyCharm中运行HelloWorld程序
刚才我们试过了运用CMD执行了HelloWorld程序,那么现在尝试使用Pycham执行HelloWorld程序
- 创建Pure Python工程,指定名称;
- 在工程中按需创建子目录并新建Python代码文件"HelloWorld.py"
- 插入代码
import time
print("Hello PyCharm!")
time.sleep(3)
print("Hello IDE!")
- 右键执行run HelloWorld;
- 执行结果如图
第三节:Python的基本语法
标识符
标识符的要点:
-
标识符是用来对常量、变量、方法、类、模块进行命名的字符;
-
标识符可以是大小写字母、数字、下划线;
-
命名不能以数字开头;
-
区分大小写;
-
命名风格可以是:
√ 驼峰风格
√ 小写字母+下划线风格例如:
# 小写字母+下划线风格的变量定义
the_radius_1 = 10
# 驼峰风格的变量定义
theRadius2 = 10
# 小写字母+下划线风格的方法定义
def get_circle_area_1(r):
return 3.14 * r * r
# 驼峰风格的方法定义
def getCircleArea2(r):
return 3.14 * r * r
常量、变量、表达式
- 常量的值不会发生变化,比如圆周率;
- 变量是值可以动态变化的量;
- 表达式是对常量和变量进行数学或逻辑运算的式子;
- 在Python中,我们可以使用一条语句给多个变量赋值;
# 定义常量,一般是全大写
PI = 3.14
# 定义变量,其值是可以动态改变的
radius = 10
# 使用表达式为变量area赋值
area = PI * radius * radius
print("半径变量改变前圆的面积是", area)
# 变量的值是可以动态改变的
radius = 20
area = PI * radius * radius
print("半径变量改变后圆的面积是", area)
# 同时给多个变量赋值
name, age = "Pythoner", 18
print(name, age)
执行结果:
基本数据类型
Python基本数据类型有如下7种:
- int —— 整型;
- float —— 浮点型;
- complex —— 复数类型;
- bool —— 布尔类型,取值可以是True或False,分别等于整型的1和0;
- str —— 字符串类型;
- 对象型 —— 类的实例;
- None —— NoneType类型
# 整型
intVar = 12
print(type(intVar))
# 浮点型
floatVar = 12.0
print(type(floatVar))
# 复数类型
complexVar = 12 + 34j
print(type(complexVar))
# 布尔类型
boolVar = True
print(type(boolVar))
# 字符串类型
strVar = "人生苦短,请用Python"
print(type(strVar))
# 对象类型
objVar = Canvas()
print(type(objVar))
# 空类型
noneVar = None
print(type(noneVar))
代码执行结果:
复数
- 复数表示
√ 基本表示:1 + 2j 或 complex(1,2),其中1为实部,2j为虚部;
√ 几何表达:
a + bj相当于直角坐标系中的(a,b)
用于表示复数的平面称为【复数平面】
√ 实数与虚数
实数:虚部为0的复数
虚数:虚部不为0的复数
纯虚数:实部为0而虚部不为0的复数
- 运算公式
√ (a+bi)+(c+di)=(a+c)+(b+d)i
√ (a+bi)-(c+di)=(a-c)+(b-d)i
√ (a+bi)*(c+di)=(ac-bd)+(ad+bc)i
√ (a+bi)/(c+di)=(a+bi)(c-di)/(c2+d2)
√ |a+bi|=(a2+b2)^0.5
- 复数的意义
√ 实数成为复数的子集,拓展了数的范围;
√ 平面几何(坐标)的代数表达;
√ 在各种物理和科学计算中应用广泛;
比如:
# 复数的两种定义形式
a = 1 + 2j
b = complex(3, 4)
# 复数的计算
print(a + b)
print(a - b)
print(a * b)
print(a / b)
print(abs(a))
执行结果:
注释与引号
前言:
为什么要有注释?注释是一段代码或一行代码的解释说明,便于可读性,理解性、执行性、必要性
- 单行注释与多行注释
单行注释通常在说明前用#
表示,并且不会出现在代码执行结果中,不会对代码产生影响 ,
多行注释通常在一段代码的前、后使用'''
表示,意为中间的多行,不会出现在代码执行结果中,仅做注释用
#我是单行注释
'''
我是多行注释
我是多行注释
我是多行注释
重要的事情说多几遍
'''
- 单引号、双引号、三引号的区别
例 如:
sentence = '我是单引号,单独使用时,我跟双引号没什么区别'
print(sentence)
sentence = "我是双引号,单独使用时,我跟单引号没什么区别"
print(sentence)
# 单引号内只能嵌套双引号
sentence = "毛主席说过:'一切反动派都是纸老虎'"
print(sentence)
# 双引号内只能嵌套单引号
sentence = '邓小平说过:"黑猫白猫,能抓住老鼠就是好猫"'
print(sentence)
# 三引号的格式在打印时会被保留
sentence = '''
一首好诗
大海啊你全他妈是水,
蜘蛛啊你全他妈是腿,
辣椒啊真他妈辣嘴,
不学Python啊真他妈后悔。
——亚洲气质舞王 尼古拉斯·赵四
'''
print(sentence)
执行结果:
程序错误
程序错误通常分为3类:
- 语法错误,——无法被解释器解释,比如引号没有成对出现;
# 语法错误在IDE中会立刻报红色不能执行结果,
print("不小必少了右边的引号)
语法错误在IDE中会立刻报红,在普通文本编辑工具中则难以发现,但解释器无法对其进行解释;
- 运行时错误,——语法正确,但解释时会报错,运行时错误又称为异常,常见的如零分母异常,类型异常等
# 这里会报一个零分母异常,因为零不能做除数
print(5/0)
执行结果:
# 这里会报一个类型异常,因为字符串是无法与浮点数进行计算的
a = "3"
print(a*3.14)
- 逻辑错误,——语法上没有错,也没有运行时异常,不会报错,纯粹只是业务逻辑不正确
# 这里是一个逻辑错误
radius = 10
area = 3.14 + radius
print("以10为半径的圆的面积是",area)
转义字符、占位符
-
转义字符
-
占位符
整型占位符:%d
;
浮点型占位符:%f
;
字符串占位符:%s
;
空白占位符:{}
,可以填充任意类型的数值;
序号占位符:{具体序号}
,参数列表会按序号的位置进行一一对应;
# 使用具体类型占位符
print("我的名字是%s,今年%d岁了,我的银行账户余额为%f"%("比尔",50,1234567890.123))
# 使用空白占位符
print("我的名字是{},今年{}岁了,我的银行账户余额为{}".format("比尔",50,1234567890.123))
# 使用序号占位符,这里注意,3个参数会依次对应到0、1、2的位置上
# 0号位置应填余额,1号位置应填年龄,2号位置应填姓名,因此正确的参数顺序为(1234567890.123,50,"比尔")
print("我的名字是{2},今年{1}岁了,我的银行账户余额为{0}".format(1234567890.123,50,"比尔"))
执行结果:
- 更多占位符