通知
  • 关于网站更多信息请加QQ群(1061691290)
  • jpress升级到4.x,显示有些问题,修复中
  • 网站还会持续更新

计算机二级-Python语言程序设计学习笔记

671人浏览 / 0人评论 / | 作者:whisper  | 分类: python  | 标签: python grammar  | 

作者:whisper

链接:https://www.qingyu.blue/article/1061

声明:请尊重原作者的劳动,如需转载请注明出处


前言

上星期又看了一遍二级Python的书,第一遍看过有段时间忘得差不多了,再看一遍又有了点印象,为了防止再次遗忘,写一篇学习笔记吧,记一下书的大纲和自觉对自己有用的点,大略过迅速一下,纯手打也不易

程序设计基本方法

程序设计语言

编译和解释

Python语言概述

2.x 3.x

Python开发环境配置

Python语言解释器:IDLE(集成开发环境),pip(第三方库安装工具)

程序的基本编写方法

IPO程序编写方法:输入、处理、输出

Python程序的特点

语法简洁,生态丰富,多语言集成;平台无关,强制可读,支持中文,模式多样,类库便捷

Python语言基本语法元素

程序的格式框架

缩进 空白字符

注释 #

续行符 \

语法元素的名称

变量,命名,保留字

数据类型

数字

整数,浮点数,复数

整数:二进制 0b 八进制 0o 十进制 十六进制 0x

浮点数:一般形式,科学计数法

字符串

单、双引号

两种序号体系:正向,反向

切片

程序的语句元素

表达式

赋值语句

引用:方法和函数

其它语句:分支,循环

基本输入输出函数

input eval print

input:可带提示文字

eval:类似js中eval,转字符串为python语句

print:最复杂 sep, end, format, {}

源程序书写风格

有趣的事:import this 试试

基本数据类型

数字类型

整数 浮点数 复数 a+bj,b为1不能省去

c = a+bj, c.imag, c.real

数字类型的运算

运算符

+  -    /  //  %  -x  +x **

数值运算函数

abs  divmod  pow  round  max  min

字符串类型及格式化

单行字符串 ''  ""

多行字符串  ''''''  """"""

转义字符

字符串的索引

正向递增序号

反向递减序号

字符串的切片

[m:n]

format方法的基本使用

{序号:控制标记}

控制标记:填充,对齐,宽度;,,精度,类型

字符串类型的操作

字符串操作符

x+y  

x*n或n*x  

x in y

字符串处理函数

len  str  chr  ord  hex  oct

字符串处理方法

函数与方法的区别

lower  upper  split  count  replace  center  strip  join

类型判断和类型间转换

type

int()  float()  str()

程序的控制结构

程序的三种控制结构

程序流程图

程序控制结构基础

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

程序控制结构扩展

异常处理 try-except

break continue

程序的分支结构

单分支结构:if

if <条件>:

  语句块

二分支结构:if-else

if <条件>:

  语句块1

else:

  语句块2

多分支结构:if-elif-else

if <条件1>:

  语句块1

elif: <条件2>:

  语句块2

...

else:

  语句块N

判断条件及组合

<  <=  >=  >  ==  !=

程序的循环结构

遍历循环  无限循环

遍历循环:for

for <循环变量> in <遍历结构>:

  语句块1

else:

  语句块2

无限循环:while

while <条件>:

  语句块1

else:

  语句块2

循环控制: break和continue

程序的异常处理

try:

  语句块1

except:

  语句块2

函数和代码复用

函数的基本使用

目的:降低编程难度和增加代码复用

函数的定义

def <函数名>(<参数列表>):

  <函数体>

 return <返回值列表>

函数的使用

<函数名>(<实际赋值参数列表>)

(1)函数定义(2)函数调用(3)函数执行(4)函数返回

def f():
  pass

占位

函数的参数传递

可选参数传递

def <函数名>(<非可选参数列表>, <可选参数>=<默认值>):

  <函数体>

  return <返回值列表>

参数名称传递

<函数名>(<参数名>=<实际值>)

函数的返回值

0个,一个,多个返回值(元组)

变量的作用域

局部变量  全局变量

global <全局变量>

代码复用

模块化设计:紧耦合 松耦合

组合数据类型

组合数据类型的基本概念

集合  序列  映射

集合类型概述

{} 元素只能是不可变类型

操作:S-T  S&T  S^T  S|T

函数和方法
S.add(x)  S.remove(x)  S.clear()  len(S)  x in S  x not in S

序列类型概述

列表 字符串 元组

函数

x in s  x not in s  s+t  s*n/n*s  s[i]  s[i:j]  s[i:j:k]  len(s)  min(s)  max(s)  s.index(x)  s.count(x)

映射类型概述

{key: value}

列表类型

列表的定义

[]  list(x)  list()

列表的索引

正向  逆向

列表的切片

s[i:j]  s[i:j:k]

列表类型的操作

列表的操作函数

len  min  max  list

列表的操作方法

ls.append(x)  ls.insert(i, x)  ls.clear()  ls.pop(i)  ls.remove(x)  ls.reverse()  ls.copy()

del ls[i]  del ls[i:j]  del ls[i:j:k]

字典类型

字典的定义

{key: value}

字典的索引

值 = 字典变量[键]

字典类型的操作

字典的操作函数

len  min  max  dict()

字典的操作方法

d.keys()  d.values()  d.items()  d.get(key, default)  d.pop(key, default)  d.popitem()  d.clear()

文件和数据格式化

文件的使用

文件的类型

文本文件 二进制文件

文件的打开和关闭

<变量名>=open(<文件路径及文件名>, <打开模式>)

打开模式:r, w, x, a, b, t, +

<变量名>.close()

文件的读写

文件的读取方法

f.read(size = -1)

f.readline(size = -1)

f.readlines(hint = -1)

f.seek(offset)   offset:0 文件开头,2 文件结尾

逐行遍历

f = open(<文件路径及名称>, 'r'>

for line in f:

  #处理一行

f.close()

逐行遍历文件仅针对文本方式,二进制方式打开没有行的概念

文件写入方法

f.write(s)

f.writelines(lines)

写入要用\n手动进行分行

数据组织的维度

一维数据

二维数据

高维数据:html, xml, json

Python计算生态

计算思维

实证思维 逻辑思维 计算思维

程序设计方法论

自顶向下设计 自底向上执行

计算生态

Python第三方程序:库(library),模块(module),程序包(package)

Python标准库

python内置函数(68个),如下要掌握的32个

abs(x)

all(x)

any(x)

bin(x)

bool(x)

chr(i)

complex(r,i)

dict()

divmod(a,b)

eval(s) 执行表达式

exec(s) 执行语句

float(x)

hex(x)

input(s)

int(x)

len(x)

list(x)

max(a1,a2,...)

min(a1,a2,...)

oct(x)

open(fname,m)

ord(c)

pow(x,y)

print(x)

range(a,b,s)

reversed(r)

round(n)

set(x)

sorted(x)

str(x)

sum(x)

type(x)

Python标准库概览

turtle库概览

用于图形绘制

导入方式

import turtle

from turtle import *

import turtle as t

turtle库与基本绘图

主要三类函数:窗体函数,画笔状态函数,画笔运动函数

窗体函数

turtle.setup(width, height, startx, starty)

画笔状态函数

pendown()

penup()

pensize(width)

pencolor()

color()

begin_fill()

end_fill()

filling()

clear()

reset()

screensize()

hideturtle()

showturtle()

isvisible()

write(str, font=None)

画笔运动函数

forward(distance)

backward(distance)

right(angle)

left(angle)

goto(x,y)

setx(x)

sety(y)

setheading(angle)

home()

circle(radius,e)

dot(size, color)

undo()

speed()

random库概览

用于生成随机数

采用梅森旋转算法

最基本的函数是random.random(),其它所有随机数都是基于这个函数扩展而来

random库与随机数运用

seed(a=None)

random()

randint(x,y)

getrandbits(k)

randrange(start,stop[,step])

uniform(a,b)

choice(seq)

shuffle(seq)

sample(pop, k)

time库概览

time库功能主要分为3个方面:时间处理,时间格式化和计时

时间处理:time.time() time.gmtime() time.localtime() time.etime()

时间格式化:time.mktime() time.strtime() time.strptime()

计时:time.sleep() time.monotonic() time.perf_counter()

Python第三方库概览

Python第三方库的获取与安装

pip工具安装

pip install <拟安装库名>

自定义安装

按照第三方库提供的步骤和方式安装

文件安装

本地安装

pip工具使用

常用命令:install download uninstall list show search

PyInstaller

打包.py为可执行文件

pyinstaller <Python源程序文件名>

-F 使源文件生成一个独立的可执行文件

jieba库概览

分割中文字符串为中文词语的序列(分词)

三种模式:精确模式(结果最少最精确),全模式(结果最多),搜索引擎模式(结果适中)

import jieba

jieba.lcut(str)

jieba库与中文分词

jieba.lcut(s)  精确模式 

lieba.lcut(s, cut_all=True) 全模式

jieba.lcut_for_search(s) 搜索擎引模式

jieba.add_word(w)

wordcloud库概览

from wordcloud import WordCloud

txt = 'I like python, I am learning python'

wordcloud = WordCloud().generate(txt)

wordcloud.to_file('testcloud.png')

Python第三方库纵览

网络爬虫方向

requests

scrapy

数据分析方向

numpy

scipy

pandas

文本处理方向

pdfminer

openpyxl

python-docx

beautifulsoup4

数据可视化方向

matplotlib

TVTK

mayavi

用户图形界面方向

PyQt5

wxPython

PyGTK

机器学习方向

scikit-learn

TensorFlow

Theano

Web开发方向

Django

Pyramid

Flask

游戏开发方向

Pygame

Panda3D

cocos2d

更多第三方库

PIL:图像处理

SymPy:代数计算

NLTK:自然语言处理

WeRoBot:微信机器人框架

MyQR:二维码生成


亲爱的读者:有时间可以点赞评论一下

点赞(1) 打赏

全部评论

还没有评论!