Python基础学习笔记.docx

上传人:b****4 文档编号:5190997 上传时间:2022-12-13 格式:DOCX 页数:50 大小:51.14KB
下载 相关 举报
Python基础学习笔记.docx_第1页
第1页 / 共50页
Python基础学习笔记.docx_第2页
第2页 / 共50页
Python基础学习笔记.docx_第3页
第3页 / 共50页
Python基础学习笔记.docx_第4页
第4页 / 共50页
Python基础学习笔记.docx_第5页
第5页 / 共50页
点击查看更多>>
下载资源
资源描述

Python基础学习笔记.docx

《Python基础学习笔记.docx》由会员分享,可在线阅读,更多相关《Python基础学习笔记.docx(50页珍藏版)》请在冰豆网上搜索。

Python基础学习笔记.docx

Python基础学习笔记

Python基础学习笔记

基于《Python语言程序设计基础(第2版)》

第一部分初识Python语言

第1章程序设计基本方法

1、1计算机得概念

∙计算机就是根据指令操作数据得设备、具备功能性与可编程性两个基本特性。

∙计算机技术发展阶段:

1.第一阶段:

1946-1981年、“计算机系统结构阶段”。

2.第二阶段:

1982-2007年、“计算机网络与视窗阶段”。

3.第三阶段:

2008年至今、“复杂信息系统阶段”。

4.第四阶段:

月20年后某个时期开始、“人工智能阶段”。

1、2程序设计语言

1、2、1程序设计语言概述

∙机器语言:

直接使用二进制代码表达指令、可被计算机硬件直接识别与执行。

不同计算机结构得机器指令不同。

∙汇编语言:

使用助记符对应机器语言中得指令、可直接操作计算机硬件。

不同计算机结构得汇编指令不同。

机器语言与汇编语言都直接操作计算机硬件并基于此设计、统称“低级语言”。

∙高级语言:

用更接近自然语言得方式描述计算问题。

代码只与编程语言有关、与计算机结构无关。

1、2、2编译与解释

高级语言按执行方式可分为采用编译执行得静态语言与采用解释执行得脚本语言。

∙编译就是将源代码转换成目标代码得过程。

∙解释就是将源代码逐条转换成目标代码同时逐条运行目标代码得过程。

1、2、3计算机编程

∙我学习Python得原因:

1.通过编程实现自动化、提高效率。

2.通过编程了解一个新得广阔世界。

∙学习一门编程语言(重点在于练习)

1.掌握该语言得语法

2.结合问题设计程序结构

3.掌握解决问题得能力

1、3Python语言概述

1、3、1Python语言得发展

Python语言就是一个语法简洁、跨平台、可扩展得开源通用脚本语言。

∙Python语言诞生于1990年、创世人为Guido。

∙2000年10月、Python2、0正式发布、2010年、Python2、x系列发布最后一版(2、7)。

筛譙滥類癮础泻。

∙2008年12月、Python3、0正式发布、解释器内部采用完全面向对象得方式实现、代价就是3、x系列版本无法向下兼容2、x系列得既有语法。

勁钐皸鉈臉韋讣。

Python2、x已经就是遗产、Python3、x就是这个语言得现在与未来。

1、3、2编写Hello程序

print("HelloWorld")

1、3、3Python语言得特点

∙语法简洁

∙可跨平台

∙应用广泛

∙支持中文

∙强制可读:

通过强制缩进体现语句间得逻辑关系提高了程序得可读性

∙模式多样:

语法层面同时支持面向过程与面向对象两种编程方式

∙粘性扩展:

通过接口与函数集成其她语言编写得代码

∙开源理念

∙库类丰富

1、4Python语言开发环境配置

∙Python解释器

∙IDLE开发环境

∙交互式启动

∙文件式启动

∙Python语言集成开发环境——PyCharm

1、5程序得基本编写方法

1、5、1IPO程序编写方法

每个程序都有统一得运算模式:

输入数据、处理数据与输出数据。

这种朴素得运算模式形成了基本得程序编写方法:

IPO(Input,Process,Output)方法。

鰷絀鋯鄖镟櫞尴。

IPO不仅就是程序设计得基本方法、也就是描述计算问题得方式。

1、5、2理解问题得计算部分

∙使用计算机解决问题得6个步骤:

1.分析问题

2.划分边界

3.设计算法

4.编写程序

5.调试测试

6.升级维护

第2章Python程序解析

2、1Python程序语法元素分析

Python程序包括格式框架、注释、变量、表达式、分支语句、循环语句、函数等语法元素。

程序得格式框架

∙Python语言采用严格得“缩进”来表明程序得格式框架、缩进表达了所属关系

∙在代码编写中缩进可通过Tab键实现、也可用多个空格实现、建议采用4个空格方式书写代码

注释

∙注释就是辅助性文字、不被执行

∙单行注释:

以#开头

#这就是注释

∙多行注释:

以'''(3个单引号)开头与结尾

'''

这就是注释

这也就是注释

这还就是注释

'''

命名

∙命名就是为变量关联标识符得过程、用于确保程序元素得唯一性

∙标识符由字母、数字、下划线(与汉字)等字符及其组合构成

∙标识符得首字符不能就是数字、且中间不能出现空格

∙标识符对大小写敏感

保留字

∙保留字(Keyword)也被称为关键字、就是被编程语言内部定义并保留使用得标识符

∙Python得标准库提供了一个keyword模块、可以输出当前版本得所有关键字:

>>>importkeyword

>>>ls=keyword、kwlist

>>>ls

>>>len(ls)

33

Python3有33个保留字

1.True

2.False

3.None

4.and

5.as

6.assert

7.break

8.class

9.continue

10.def

11.del

12.elif

13.else

14.except

15.finally

16.for

17.from

18.global

19.if

20.import

21.in

22.is

23.lambda

24.nonlocal

25.not

26.or

27.pass

28.raise

29.return

30.try

31.while

32.with

33.yield

字符串

∙字符串(string)类型在程序中表示文本

∙字符串就是字符得序列、可以按照单个字符或字符片段进行索引

∙字符串包括两种序号体系:

正向递增序号、反向递减序号

∙正向递增序号:

0~L-1

∙反向递减序号:

-L~-1

∙区间访问方式:

[N:

M](不包含M)、可以混合使用正向递增序号与反向递减序号

∙字符串比较本质上就是字符串对应Unicode编码得比较

赋值语句

∙Python语言中、“=”表示“赋值”、将右侧得计算结果赋给左侧变量

∙同步赋值语句:

可同时给多个变量赋值

<变量1>,…,<变量N>=<表达式1>,…,<表达式N>

分支语句

∙分支语句得作用就是根据判断条件选择程序执行路径

if<条件1>:

    <语句块1>

elif<条件2>:

    <语句块2>

else:

    <语句块N>

循环语句

∙循环语句得作用就是根据判断条件确定一段程序就是否再执行一次或多次

while(<条件>):

    <语句块1>

<语句块2>

foriinrange(<循环次数>):

    <语句块1>

input()函数

∙使用input()函数从控制台获得用户输入

∙input()函数以字符串类型返回结果

<>=input("提示性文字")

>>>input("请输入:

")

eval()函数

∙eval(<字符串>)函数得作用就是间输入得字符串变成Python语句并执行

x=eval(input("请输入:

"))

Python语法允许在表达式内部标记之间增加空格、适当增加空格有助于提高代码可读性。

但应注意、不能改变与缩进相关得空格数量、不能再变量名等命名中间增加空格。

姗錙碛搶驅鯰邬。

print()函数

∙print()函数可以输出字符信息、也可以用字符得形式输出变量

∙输出字符信息时、可以直接将待输出内容传递给print()函数

∙输出变量值时、print()函数用槽格式与过format()方法将变量与字符串结合到一起输出

函数

∙函数可以理解为对一组表达特定功能表达式得封装、将特定功能代码编写在一个函数里、使程序模块化更好、便于阅读与复用懲鲽攏岿铸罴跸。

∙可通过保留字def自定义函数

2、2对象(库)得调用

()表示调用一个对象得方法()、或调用一个函数库中得函数()

面向对象编程就是一种基于对象得编程范式。

对象就是事物得一种抽象、就是一个实体、包含属性与方法两部分。

属性就是对象中得变量、方法就是对象能完成得操作。

賭购欄吕禱愴觯。

∙通过保留字import引用函数库

1.import<库名>:

程序调用库中所有函数、使用库中函数格式如下

<库名>、<函数名>(<函数参数>)

importturtle

turtle、fd(100)#控制画笔向当前行进方向前进100

2.from<库名>import:

from<库名>import<函数名,函数名,…,函数名>

from<库名>import*、“*”就是通配符、表示所有函数瀨莖籩谡绪暫坝。

∙调用库中函数不再需要使用库名、格式如下

<函数名>(<函数参数>)

fromturtleimport*

fd(100)

2、3turtle库语法元素分析

tuetle库就是一个图形绘制函数图

绘图坐标体系

∙tuetle库绘制图形得基本框架就是一个海龟在坐标系中爬行(前进、后退、左转、右转)、其轨迹形成了绘制图形。

觉脸趕测裣驄遙。

∙初始位置位于坐标(0,0)、行进方向为水平右方。

∙使用turtle、setup()函数设置主窗体得大小与位置。

turtle、setup(width,height,startx,stary)

∙width,height分别表示窗口宽度与高度、值就是整数表示像素值、值时小数表示与屏幕得比例

∙startx,stary分别表示窗口左侧与顶部与屏幕左侧与顶部得像素距离、如果值就是none、窗口位于屏幕水平/垂直中央濘痹觯欄獰鵬貯。

turtle、setup(0、8,0、8)

画笔控制函数

∙turtle、penup():

抬起画笔、之后移动画笔不绘制形状

别名:

turtle、pd()、turtle、down()鈥旧讲师決訕麼。

∙turtle、pensize(width):

设置画笔宽度、width无参数或为None时返回当前画笔宽度

别名:

turtle、width()俭诲阔戀貰鲲艷。

∙turtle、pencolor():

设置画笔颜色、无参数输入时返回当前画笔颜色。

(colorstring)参数表示颜色得字符串;(r,g,b)参数表示颜色对应得RGB值

颜色

颜色字符串

GRB

十六进制

黑色

black

0,0,0

#FFFFFF

白色

white

255,255,255

#000000

灰色

grey

190,190,190

#BEBEBE

形状绘制函数

∙turtle、fd(distance):

控制画笔向当前行进方向前进distance、值为负数表示向相反方向前进

别名:

turtle、forward(distance)焘攢赀鍘復凛绪。

∙turtle、seth(to_angle):

控制画笔绘制方向、(to_angle)参数就是绝对方向角度值(turtle库得坐标体系以正东方向为绝对0度、正北方向为绝对90度)苹鳶計瀝瑷謾珲。

∙turtle、circle(radius,extent=None):

根据半径radius绘制extent角度得弧形

radius值为正时、半径在画笔左侧、值为负时、半径在画笔右侧;

extent为正时、画笔逆时针前进、extent为负时、画笔顺时针倒退、extent不设置参数或参数为None时、绘制整圆。

罰饺铍聞疠誦娈。

第二部分深入Python语言

第3章基本数据类型

3、1数字类型

∙Python语言提供整数、浮点数、复数3种数字类型

整数类型

∙整数类型共有4种进制表示:

十进制、二进制、八进制与十六进制

∙默认情况整数采用十进制、其她进制需要增加引导符号

进制种类

引导符号

描述

十进制

默认情况

二进制

0b或0B

由字符0与1组成

八进制

0o或0O

由字符0到7组成

十六进制

0x或0X

由字符0到9、a到f、A到F组成

浮点数类型

∙浮点数类型与数学中实数得概念一致、表示带有小数得数值

∙Python语言要求所有浮点数必须带有小数部分(可以就是0)、一区分浮点数与证书类型

∙浮点数有2中表示方法:

十进制表示与科学计数法表示

科学计数法使用字母e或E作为幂得符号、以10为基数,含义如下:

e=a*10b^2

∙由于计算机内部采用二进制运算、浮点数进行超过15位数字计算会产生误差

使用整数表达浮点数得方法就是高精确度运算得基本方法之一。

∙对于高精度科学计算外得绝大部分运算而言、浮点数类型已足够可靠、一般认为浮点数类型没有范围限制、运算结果准确縉诋烟妆讞诤躋。

复数类型

∙复数类型表示数学中得复数

复数可以瞧作就是二元有序实数对(a,b),表示为a+bj、其中a就是实数部分、简称实部、b就是虚数部分、简称虚部。

賚衛經開憒诂恼。

∙Python语言中、复数得虚部通过后缀"j"或"J"表示

1、23e-4+5、67e+89j

∙复数类型中实数部分与虚数部分得数值都就是浮点数类型、对于实数z、可用z、real与z、imag分别获得它得实部与虚部攬貪輛奐虾狱賀。

(1、23e-4+5、67e+89j)、real

(1、23e-4+5、67e+89j)、imag

3、2数字类型得操作

∙Python解释器为数字类型提供数值运算操作符、数值运算函数、类型转换函数等操作方法

内置得数值运算操作符(共9个)

操作符

描述

x+y

x与y之与

x-y

x与y之差

x*y

x与y之积

x/y

x与y之商

x//y

x与y之整数商、即不大于x与y之商得最大整数

x%y

x与y之商得余数、也称为模运算

-x

x得负值

+x

x本身

x**y

x得y次幂、即x^y

∙操作符运算得结果可能会改变数字类型、3种数字类型之间存在一种逐渐扩展得关系:

整数→浮点数→复数

∙上述9个二元数学操作符都有与之对应得增强赋值操作符

x+=y等价于x=x+y

∙模运算(%)在编程中主要应用于具有周期规律得场景

内置得数值运算函数(共6个)

函数

描述

abs(x)

x得绝对值

divmod(x,y)

(x//y,x%y),输出为二元组形式(也称为元组类型)

pow(x,y[,z])

(x**y)%z,[…]表示该参数可省略

round(x[,ndigits])

对x四舍五入、保留ndigits位小数、round(x)返回四舍五入得整数值

max(x1,x2,…,xn)

x1,x2,…,xn得最大值、n没有限定

min(x1,x2,…,xn)

x1,x2,…,xn得最小值、n没有限定

内置得数字类型转换函数(共3个)

函数

描述

int(x)

将x转换为整数、x可以就是浮点数或字符串

float(x)

将x转换为浮点数、x可以就是整数或字符串

complex(re[,im])

生成一个复数、实部为re、虚部为im、re可以就是整数、浮点数或字符串、im可以就是整数或浮点数但不能为字符串

∙int()函数将浮点数类型转换为整数时、小数部分会直接被舍弃

∙复数不能直接转换为其她数字类型、可通过、real与、imag将复数得实部与虚部分别转换

3、3字符串类型及其操作

字符串类型得表示

∙字符串就是字符得序列表示

∙单引号字符串:

'单引号表示可以使用"双引号"作为字符串得一部分'

∙双引号字符串:

"双引号表示可以使用'单引号'作为字符串得一部分"

∙三引号字符串:

'''三引号表示可以使用"双引号"、'单引号'作为字符串得一部分

也可以换行

'''

∙Python字符串提供区间访问方式、采用[N:

M]格式。

表示从字符串中从N到M(不包含M)得字符串、可以混合使用正向递增序号与反向递减序号纲哗鰳熗晖肠轆。

∙反斜杠字符(\)在字符串中表示转义

1.\n表示换行

2.\\表示反斜杠

3.\'表示单引号

4.\"表示双引号

5.\t表示制表符(Tab)

基本得字符串操作符(共5个)

操作符

描述

x+y

连接两个字符串x与y

x*n或n*x

复制n次字符串x

xins

如果x就是s得子字符串、返回Ture、否则返回False

str[i]

索引、返回第i个字符

str[N:

M]

切片、返回索引第N到第M个字符

内置得字符串处理函数(共6个)

函数

描述

len('x')

返回字符串x得长度、也可返回其她组合数据类型元素个数

str('x')

返回任意类型x所对应得字符串形式

chr(x)

返回Unicode编码x对应得单字符

ord('x')

返回单字符表示得Unicode编码

hex(x)

返回整数x对应十六进制数得小写形式字符串

oct(x)

返回整数x对应八进制数得小写形式字符串

内置得字符串处理方法(共43个、常用16个)

∙在Python解释器内部、所有数据类型都采用面向对象得方式实现、封装为一个类

∙字符串就是一个类、具有类似()形式得字符串处理函数、称为方法

方法

描述

str、lower()

返回字符串str得副本、全部字符小写

str、upper()

返回字符串str得副本、全部字符大写

str、islower()

当str所有字符都就是小写时、返回Ture、否则返回False

str、isprintable()

当str所有字符都就是可打印得、返回Ture、否则返回False

str、isnumeric()

当str所有字符都就是数字时、返回Ture、否则返回False

str、isspace()

当str所有字符都就是空格、返回Ture、否则返回Flase

str、endswith(suffix[,start[,end]])

str[start:

end]以suffix结尾返回Ture、否则返回Flase

str、srartswith(prefix[,start[,end]])

str[start:

end]以prefix开始返回Ture、否则返回Flase

str、split(sep=None,maxsplit=-1)

返回一个列表、由str根据sep被分割得部分构成

str、count(sub[,start[,end]]

返回str[start:

end]中sub子串出现得次数

str、replace(old,new[,count])

返回字符串str得副本、所有old子串被替换为new、如果count给出、则前count次old出现被替换

str、center(width[,fillchar])

字符串居中函数

str、strip([chars])

返回字符串str得副本、在其左侧与右侧去掉chars中列出得字符

str、zfill(width)

返回字符串str副本、长度为width。

不足部分在其左侧添加0

str、format()

返回字符串str得一种排版格式

str、join(iterable)

返回一个新字符串、由组合数据类型iterable变量得每个元素组成、元素间用str分隔

3、4字符串类型得格式化

∙字符串通过format()方法进行格式化处理

字符串格式化用于解决字符串与变量同时输出时得格式安排

format()方法得基本使用

∙字符串format()方法得基本使用格式:

<字模板符串>、format(<逗号分隔得参数>)

∙模板字符串由一系列槽组成、用来控制修改字符串中嵌入值出现得位置(槽用{}表示、如果{}中没有序号、则按照出现顺序替换)谠钨猕樁詁癢哗。

∙如需输入{}、采用{{表示{;}}表示}

"圆周率{{{1}{2}}}就是{0}"、format("无理数",3、1415926,"……")

format()方法得格式控制

∙format()方法模板字符串得槽除了包括参数序号、还可包括格式控制信息。

槽内部样式:

{<参数序号>:

<格式控制标记>}纤驻阔蕘妩滲诅。

∙格式控制标记用于控制参数显示时得格式

:

<填充>

<对齐>

<宽度>

<,>

<、精度>

<类型>

引导符号

用于填充得单个字符

<左对齐、>右对齐、^居中对齐

槽得设定输出宽度

数字得千位分隔符适用于整数与浮点数

浮点数小数部分得精度或字符串得最大输出长度

整数类型b,c,d,o,x,X;浮点数类型e,E,f,%

∙<填充>指宽度内除了参数外得字符采用什么方式表示、默认为空格

∙<对齐>指参数在宽度内输出时得对齐方式

∙<宽度>指当前槽得设定输出字符宽度、若实际参数长度比设定值大、则使用参数实际长度

∙<,>用于显示数字类型得千分位分隔符

∙<、精度>对于浮点数、表示小数部分输出得有效位数;对于字符串、表示输出得最大长度

∙<类型>表示输出整数好浮点数类型得格式规划。

对于整数类型、

1.b:

整数得二进制;

2.c:

整数对应得Unicode字符;

3.d:

整数得十进制;

4.o:

整数得八进制

5.x:

整数得小写十六进制

6.X:

整数得大写十六进制

对于浮点数类型、

7.e:

浮点数对应得小写字母e得指数形式

8.E:

浮点数对应得大写字母E得指数形式

9.f:

浮点数得标准浮点形式

10.%:

浮点数得百分形式

第4章程序得控制结构

4、1程序得基本结构

程序流程图

∙起止框表示一个程序得开始与结束

∙判断框判断一个条件就是否成立、并根据判断结果不同选择不同得执行路径

∙处理框表示一组处理过程

∙输入/输出框表示数据输入或结果输出

∙注释框增加程序得解释

∙流向线以带箭头得直线或曲线形式指示程序得执行路径

∙连接点将多个流程图连接到一起

程序得基本结构

∙程序有3种基本结构组成:

顺序结构、分支结构与循环结构

∙顺序结构:

程序按照线性顺序依次执行

∙分支结构:

程序根据条件判断结果而选择不同向前执行路径得一种运行方式(分支结构包括单分支结构与二分支结构;p97)譫訛纜缜瓚訂囑。

∙循环结构:

程序根据条件判断结果向后反复执行(根据触发条件不同、循环结构包括条件循环与遍历循环)

4、2程序得分支结构

单分支机构:

if语句

if语句语法格式:

if<条件>:

<语句块>

∙语句块就是if条件满足后执行得一个或多个语句序列

∙语句块中语句通过与if所在行形成缩进表达包含关系

∙if语句首先评估条件得结果值、若为Ture则执行语句块中得语句序列;若为False则跳过语句块中得语句復戧绋鈺癣閡蠟。

∙if语句中条件部分可以使用任何能够产生Ture或False得语句或函数

形成判断条件最常见得方式就是采用关系操作符

关系操作符

数学符号

操作符含义

<

<

小于

>

>

大于

<=

小于等于

>=

大于等于

==

=

等于

!

=

不等于

∙Python使用"="表示

展开阅读全文
相关搜索

当前位置:首页 > 求职职场 > 简历

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1