《Python编程与数据分析基础》学习笔记

此门课是经由学堂在线平台所学习,课程来源为中华女子学院。

第一章 Python概述

1.1 本章导学

本章教学目标

1 认识计算机程序,了解计算机程序的建立过程
2 了解Python语言的特点
3 学会安装Python软件
4 熟悉Python IDE(工作环境)的基本操作方法
5 理解基本的Python编程规范
程序代码由命令语句和控制语句组成。
命令语句:按照语法要求书写的语句。
控制语句:选择语句—如,if…elif…else 和 循环语句,如.for
程序:是一组计算机能够识别和执行的指令或代码。
每一条指令“指挥”计算机执行特定的操作。
程序设计语言:编写程序的语言,也成为编程语言。
种类:机器语言、汇编语言、高级语言
高级语言:接近自然语言,易于人类书写和阅读。
机器指令:二进制编码,计算机识别和执行

1.2 Python语言与Python环境安装

Python 是一种高级通用语言,也是目前非常受欢迎的编程语言之一。
Python语言的创立者是荷兰人吉多·范罗苏姆(Guidovon Rossum)。
1991年发布了第一个版本,2000年发布了2.0版本,2008年发布了3.0版本。
Python语言的应用领域:常规软件开发、科学计算、数据分析、人工智能、云计算、自动化运维

Python语言的特点:

易学易懂:语法简单,代码简洁。
跨平台可移植:可以在Windows、Linux、Mac OS等平台安装和使用;
Python程序不经过任何转换就可以在不同平台运行。
功能强大:具有功能丰富的标准库,同时拥有大量的第三方扩展库。
可扩展性和可嵌入性:可以把多种不同语言编写的程序融合到一起实现无缝拼接(“胶水”语言)。

搭建Python工作环境

安装Python软件
使用Python语言编辑Python程序。
提供Python解释器,执行Python程序。
将Python代码解释为计算机能够识别和执行的二进制指令。

常见的Python集成开发环境

Integrated Development and Learning Environment.(IDLE)
集成开发环境:将程序的编辑、调试、解释、运行等功能集成在一起的用户操作环境。
Python 官方的标准开发环境
Pycharm
Anaconda

Python IDLE的下载与安装

查看系统类型:32位/64位操作系统
右键单击计算机桌面上的“此电脑”图标,选择“属性”命令,打开“系统”对话框。
登录Python官网:https://www.python.org.downloads/
下载软件:选择与计算机系统类型匹配的版本
安装
启动Python IDLE
在Windows 系统的“开始”菜单中选择python IDE命令。

Python IDLE的使用

Python IDLE 提供了两个操作窗口,对应两种工作方式。
shell窗口:启动Python后,首先进入的是Shell窗口。
文件编辑窗口:在Shell窗口中,选择”File New File’命令,打开文件编辑窗口。
选择 Options Configure IDLE 命令 设置字体和字号。
选择 Options Show Line Number命令 显示行号,方便查看语句位置。

Shell窗口

  • 交互模式:输入一条语句执行一条。立即返回当前命令语句的执行结果。
  • 不能直接修改已执行的命令语句,也不能直接保存为Python程序文件。再次执行同样的代码,必须重新输入。
  • 查看当前窗口中的历史命令:【ALT+P】上一条语句, 【ALT+N】 下一条语句。

文件编辑窗口

  • 文件模式:将命令语句保存为Python程序文件.py,再一起执行所有语句。持久保存命令语句,一次编写重复执行。
  • 可以在文件编辑窗口中查看和修改已编写的命令语句。

Python 编程规范

Ⅰ基本语法
Python程序对于代码的编写有严格的语法要求。

  • 语句中的所有符号都必须是半角字符
    半角:占用一个字节的字符,如:英文字符、数字等都是半角字符。
    全角: 占用两个字节的字符。如:汉字。
    代码中经常使用引号、冒号、都好、括号等符号,注意半角和全角的区别。
    半角字符(英文输入法)全角字符(中文输入法)
  • 语句中的引号和括号必须配对出现
    引号:‘’ “” ‘’‘’‘’ 括号() [] {}
  • 使用注释符为代码添加必要的注释信息
    注释信息:不是命令语句,不会被执行。用于人们对代码的阅读和理解。
    注释符:有两种
    #:添加单行注释信息
    三引号(三个半角引号或双引号):添加单行或多行注释信息。

Ⅱ程序错误

  • 语法错误:不符合Python语言的语法规定。
  • 逻辑错误:语法正确,但设计逻辑有问题,导致不能得到预期的结果。

执行程序时,Python解释器首先检查代码中是否存在语法错误。如果有错误,则会在Shell窗口显示错误提示,帮助设计者发现并改正错误。
学会阅读Python给出的错误提示,提高自主学习能力。

Ⅲ 错误提示

  • NameError: name** is not defined. 名称错误,没有被定义。
  • SyntaxError: invalid character in identifier. 语法错误:无效的字符。
  • SyntaxError:EOL while scanning string literal. 语法错误:字符串确实结束符号。

Ⅳ 小结
Python程序对代码的编写有严格的语法要求。

  • 理解、记忆并遵守Python中的各种语法规定。代码中有任何一点错误都不能正常执行。
  • 养成认真细心的学习习惯。代码中有的错误时英文单词的拼写不对造成的。
  • 学会查看错误提示、发现和查找错误。

本章总结

  • 计算机程序是一组计算机能识别和执行的指令。命令语句、控制语句(选择语句、循环语句)
  • 计算机程序的基本结构。IPO:Input(输入)、Process(处理)、Output(输出)
  • 程序设计语言是用来编写程序的语言(编程语言).
  • Python是一种高级程序设计语言。接近自然语言,易于人类书写和阅读。
  • Python IDLE提供了编辑和执行Python程序的工作环境。
  • Shell窗口:在>>>命令提示符后输入语句。交互操作:输入一条语句执行一句。
  • 文件编辑窗口:编辑程序代码。一次编写重复执行:代码保存为Python程序文件.py.

本章作业

本章作业共15题,100分制。最后共答对12题,得80分,再次重温一下题目。

第二章 Python语言基础

2.1 本章导学

通过Python语言基础知识的学习,学会编写简单的Python程序
用程序解决实际问题
①理解和分析实际问题
②给出解决问题的具体步骤(算法)
③Python编码及调试

2.2 常量与变量

常量

  • 不需要改变,也不能改变的值
  • 数字常量2、3.14 、math.pi
  • 字符串常量”请输入半径:“”圆的面积:“”Python" “www.cwu.edu.cn”

变量

  • 值可以改变的量
  • 程序中需要使用变量,保存要处理的各种数据
  • 变量通过变量名标识,通过赋值方式创建 变量名=值 r=2 s=math.pi*math.pow(r,2)
  • 变量必须先定义后使用,否则会输出报错信息

变量的命名

①符合Python标识符命名规则

  • 由大小写字母(A-Z a-z)、数字和下划线等组成,不能有空格和标点符合
  • 不能以数字开头,必须以字母或下划线开头
  • 除非特定场景需要,应避免使用下划线开头的标识符
  • Python变量命对字母大小写敏感 Name 和name是不同的变量

②变量名称应见名知意

  • number_of_students 学生人数的变量
  • 推荐下划线分隔命名方式
    ③不能使用python的关键字(保留字)、内置函数名等标识符

关键字

  • 保留字 35个
  • Python语言中已经被赋予特定意义的标识符
  • 不允许通过任何方式改变它们的含义
  • 开发者不能用关键字对变量、函数、类、模块以及其他对象命名
  • 查看关键字
help("keyworld")
import keyword
print(keyword.kwlist)
FalseTrueimportasifelseelif
fororandNonedefwhilebreak
classcontinuedelglobalpassraisetry
returninassertisasyncexceptlambda
withawaitfinallynonlocalyieldnotfrom

内置函数

  • Python解释器自带的函数,直接使用
  • 若变量名与内置函数重名,则函数功能会失效
abs()chr()exec()hex()map()print()staticmethod()
all()classmethod()filter()id()max()property()str()
any()compile()float()input()memoryview()range()sum()
ascii()complex()format()int()min()repr()super()
bin()delattr()frozenset()isinstance()next()reversed()tuple()
bool()dict()getattr()issubclass()object()round()type()
breakpoint()dir()globals()iter()oct()set()vars()
bytearray()divmod()hasattr()len()open()setattr()zip()
bytes()enumerate()hash()list()ord()slicea()_ import _ ()
callable()eval()help()locals()pow()sorted()

变量的存储

  • 变量存储的是其值在内存中的地址
  • 赋值语句的执行过程
    ①首先把赋值运算符右侧表达式的值计算出来
    ②然后在内存中寻找一个位置把值存放进去
    ③最后创建变量并指向这个内存地址
  • 变量的值是可以改变的
  • 内置函数id()查看对象的内存地址

2.3 运算符与表达式

表达式:用运算符将常量、变量、函数等对象连接起来。
表达式中的运算符优先级:

  • 算术运算符的优先级最高,其次时关系运算符、逻辑运算符等
  • 为了避免优先级错误,最好使用圆括号明确表达式中的优先级
    ** * / % // + - <= < > >= == != not and or

运算符:算术运算符、关系运算符、逻辑运算符、赋值运算符、成员测试运算符、对象同一性测试符、位运算符
①算术运算符:+ - * / % ** //

  • 加法、减法、乘法、除法、求余数、幂运算、整除

②关系运算符:== != > < >= <=

  • 比较两个对象的大小,结果是布尔值(True False)
  • 等于、不等于、大于、小于、大于或等于、小于或等于

③逻辑运算符:and or not

  • 与或非
  • and 和 or 的惰性求值 连接多个表达式时,只计算必须要计算的表达式

④赋值运算符:= += -= *= /=

  • 赋值=
  • 加法赋值、减法赋值、乘法赋值、除法赋值

⑤成员测试运算符:in not in

  • 测试一个对象是否为另一个对象中的元素
  • 结果为布尔值
  • in 、not in

⑥对象同一性测试符:is is not

  • 测试是否为同一对象或内存地址是否相同
  • 结果为布尔值
  • is、is not

⑦位运算符:&|^~ << >>
语句:每个Python程序文件都由语句构成

  • 一般情况下,一条语句独占一行 赋值语句、print()语句、import 语句、return语句等
  • 可以使用反斜杠\,将一条较长的语句,分写在多行上
  • 使用方括号、花括号、圆括号时,语句可以直接分写在多行上,不用\
  • 复合语句可以占据多行,首行以关键字开始,以冒号:结尾 if条件判断语句、for循环语句、while循环语句等。

2.4 数字类型(type)

①Python 程序处理不同形式的数据。
②不同形式的数据,用不同的数据类型进行表达和存储。
③不同的数据类型支持不同的操作
④变量的数据类型根据赋值数据而动态变化
⑤Python数据类型:Number数字、String字符串、List列表、Tuple元组、Dictionary字典、Set集合
Number数字

  • 整型(int):正整数、0、负整数
  • 浮点数(float)由整数部分和小数部分组成 实数
  • 整型和浮点型常用操作符:算术运算符+ - % // ** *
  • 整型和浮点型常用操作函数:round()、pow()、abs()
  • 复数型(complex)实部和虚部都是浮点型 x.imag x.real
  • 布尔型(bool) True 和False 两个值,对应1和0 逻辑判断

2.5 初识字符串

  • 字符组成的有序序列
  • 用引号作为定界符括起来
  • 单引号、双引号
  • 三单引号、三双引号,主要表示多行字符串
  • 不同形式的引号可以嵌套,最外层的引号形式必须配对
  • Python3中字符默认为Unicode编码
  • 字符按照Unicode编码进行比较
  • ord()查看字符Unicode编码
  • chr()将Unicode编码转换为对应字符
  • 字符串按顺序比较对应位置的字符,大小取决于第1对不相同的字符,比如 Ha v e Ha n d

字符串与数字类型的转换

  • int() float()
  • eval()把字符串转换为表达式并计算
  • str() 转换为字符串

2.6 内置函数及基本输入输出

Python 函数

  • 一段封装好的可以实现某种特定功能的Python程序
  • 用户不用关心程序实现的细节
  • 通过函数名及其参数直接调用 float() int(x[,d]) round(x[,ndigits]) str(obj) eval(s)

内置函数,就是Python解释器自带的函数,可以直接使用

abs()chr()exec()hex()map()print()staticmethod()
all()classmethod()filter()id()max()property()str()
any()compile()float()input()memoryview()range()sum()
ascii()complex()format()int()min()repr()super()
bin()delattr()frozenset()isinstance()next()reversed()tuple()
bool()dict()getattr()issubclass()object()round()type()
breakpoint()dir()globals()iter()oct()set()vars()
bytearray()divmod()hasattr()len()open()setattr()zip()
bytes()enumerate()hash()list()ord()slicea()_ import _ ()
callable()eval()help()locals()pow()sorted()

函数调用
①函数名(参数1,参数2,…)
②函数名后必须加一对圆括号()
③不同函数的参数个数不同
④参数有必选,有可选
⑤函数的参数值必须符合数据类型要求
⑥函数通常会有一个返回值,表示调用的结果
⑦函数可以嵌套使用 就是一个函数可以作为另外一个函数的参数
⑧通过help函数了解函数的语法
基本输入函数

  • 语法 input([prompt])
  • prompt:提示文本,该参数是可选的,字符串类型
  • 从键盘接收的任何输入,默认作为字符串类型

基本输出函数

  • 语法:print(value,…,sep=‘’,end=‘\n’,file=sys.stdout)
  • value:输出的值,可以有多个,英文逗号分隔
  • sep:输出结果中各个之间的分隔符,默认为空格
  • end:输出数据之后以什么结尾,默认为换行符
  • file:输出位置,默认为标准控制台(屏幕)
  • print()函数还可以输出格式化的字符串
  • 使用%运算符设置格式
  • 格式化字符串%(参数)
  • 格式化字符串是一个输出格式的模板
  • 模板中使用格式符作为占位符,指明该位置上的实际值的数据格式
  • 例子:s=“python” score=85.2 print(‘the score of %s is %d’)%(s,score)
  • %s 格式化字符串,%d格式化整数
  • the score of Python is 85

2.7 模块

模块是一组程序代码

  • 包含了多个函数、对象及其方法
  • 通过import 语句导入才能使用这些模块

分类

  • 内置模块,标准库,Python自带的
  • 第三方模块,扩展库,不是Python自带的,需要另外安装
  • 自定义模块,用户自己编写的

问题

  • 使用内置模块里的函数(标准库函数)需要import,使用内置函数为什么不需要import?
  • 内置函数
    ①比如,input()
    ②使用频繁或与语言本身绑定比较紧密的函数
    ③Python解释器自带的函数
    ④伴随着Python解释器一起启动
    ⑤不需要导入就可以直接使用
  • 标准库函数
    ①比如,math模块里的math.pow()
    ②标准库属于Python解释器的外部扩展
    ③导入后才生效
  • 第三方模块
    需要安装,比如numpy、pandas、matplotlib
    pip install numpy
    pip install pandas
    pip install matplotlib
  • 自定义模块
    自定义Python 模块,用户可以编写可宠用的代码
    与访问该自定义模块的Python文件,位于同一目录中
  • 模块的使用
    ① 方法1 import …
    直接导入该模块的所有内容
    使用模块中的某个函数时,要在函数名前加上模块名
    ②方法2 from … import …
    导入模块中的某个函数
    可以在程序中直接使用函数名
    ③方法3 import … as … 或 from … import … as …
    导入模块或者某个函数时,为了简化名称或者避免同名情况,则使用关键字as为模块或者函数定义一个别名。

2.8 本章总结加作业

本章作业30题,满分100分,得分100分,欧耶。

第三章 程序控制结构

3.1 本章导学

学习和掌握选择结构和循环结构,从而实现更复杂的处理逻辑,解决更复杂的实际问题。

3.2 选择结构

从主体上说,程序是按顺序执行的
现实问题的逻辑更复杂

  • 根据条件,选择执行某些语句
  • 根据条件,反复执行某些语句

选择结构又称为分支结构
根据条件表达式是否成立,决定下一步的执行语句

  • 条件表达式
    所有合法的Python 表达式
    关系表达式、逻辑表达式、算术表达式等,包括单个常量、函数、变量
    表达式结果是True或False
    不是False、0(或0.0、0j等)、空值(None)、空对象,等价于True
  • 单分支结构、双分支结构、多分支结构、嵌套分支结构等
    ①单分支结构(if)
    如果满足条件,就执行语句块1,不满足则不执行
if 条件表达式
    语句块1

缩进
语句块缩进–>代码之间的逻辑关系
同一个级别的语句的缩进量必须相同
行尾的冒号表示缩进的开始,缩进结束就表示一个语句的结束
②双分支结构if-else
满足条件就执行语句块1,不满足条件则执行语句块2

if 条件表达式:
    语句块1
else:
    语句块2

③多分支结构if-elif
可以有多个条件判断

if 条件表达式1:
    语句块1
elif 条件表达式2:
    语句块2
elif 条件表达式3:
    语句块3
...
[else:
    语句块n]

④嵌套分支结构
多分支结构也可以使用嵌套分支结构来实现

if 条件表达式1:
    语句块1
    if 条件表达式2:
        语句块2
    else:
        语句块3
else:
    if 条件表达3
        语句块4
  • 随机数
    ①random 模块
    该模块实现了各种分布的伪随机数生成器
    ②函数random.randint(a,b)
    返回随机整数N,属于[a,b]范围

3.3 for 循环结构

3.4 while 循环结构

3.5 break、continue 和else

3.6 嵌套循环

3.7 循环应用案例

3.8 本章总结

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值