一点号零基础学编程14分钟前
Image may be NSFW.
Clik here to view.

上节课作业
1.修改输入一个年月日日期,输出是星期几的程序,闰年判断做成函数,统计天数作成函数,星期计算做成函数
代码如下:
Image may be NSFW.
Clik here to view.

Image may be NSFW.
Clik here to view.

2.求图形面积函数增加平行四边形,梯形
Image may be NSFW.
Clik here to view.

做成模块
前面这个求各种图形面积的程序,如果后续陆续要增加更多的图形,则会导致这个程序越做越长,看起来很不方便
并且还有一个需求无法满足,假如有2个同学在做这个项目,一个人已经做好了3个图形的计算方法函数,另外一个人做好了2个图形的计算方法,怎样才能更方便的将2个人的代码整合到一起呢?假如有更多的人在做更多的图形,而且使用函数的也是其它的更多人,那么如何组织这些代码才能更有逻辑呢?
模块能够让你更有逻辑的组织你的python代码块。
简单的说,模块就是一个保存了python代码的文件。模块能够定义函数,类和变量。模块里也能包含可执行的代码。
将上面这个包含了5个图形计算面积函数的文件另存为area.py,然后只保留这5个函数,将其它代码删除:
Image may be NSFW.
Clik here to view.

在另一个文件里导入模块 使用import module1[,module2[,... moduleN] 来导入模块
例如刚才做好了area.py,要导入这个模块,则在代码前面使用import area 来完成
然后使用 area.triangle(base,high) 来访问模块里面的函数
具体代码如下:
Image may be NSFW.
Clik here to view.

还记得以前我们曾经导入过一个模块random吗
import random 引入一个模块random
random.randint(1,99) 生成一个1到99范围之内的随机整数
日期和时间模块使用import time来导入日期和时间模块,来处理常见的转换日期格式问题
时间间隔是按照秒为单位的浮点小数
每个时间戳是从1970年1月1日0点0分0秒经过了多长时间来表示
比如要表示一个当前时间的时间戳,可以在python里面运行如下代码:
Image may be NSFW.
Clik here to view.

这个时间是用于电脑存储和计算的,但是对于人类来说并不友好,所以,一般会通过函数将这个时间戳转换为人类熟悉的格式
运行如下代码进行体验:
这里是用time.localtime函数来获得当前的本地时间戳,然后用strftime函数将时间戳转换为显示格式
其中的%Y表示用4位数的年,%m表示月份01-12,%d表示月内的一天0-31,%H表示24小时数0-23,%M表示分钟数00-59,%S表示秒00-59
还有很多其它格式参数,具体内容大家可以自行去网上搜索。
time模块还有很多函数,常用的有time.sleep(seconds),表示暂停程序几秒钟,在python里面输入time.sleep(5)体验一下暂停5秒钟的感觉
time其它时间函数,请大家自行去网上搜索后在python里面进行体验。
进程的概念计算机系统会启动很多程序,但这些程序不一定在当前界面能看到,比如启动一个python程序,假设这个程序一直在运行不退出,然后我们并没有停留在终端界面,就不一定会看到这个程序在运行,我们把这可以称之为进程。
在树莓派系统里面,可以在LX终端程序里面用sudo ps aux命令来查看所有的当前正在运行的进程:
Image may be NSFW.
Clik here to view.

注意其中PID这一列就是进程ID
如果要搜索包含指定名字的进程,则可以使用sudo ps aux|grep 名字
例如,要搜索有几个包含python的进程,使用sudo ps aux|grep python
Image may be NSFW.
Clik here to view.
如果只看到最后一行 包含了 grep 这一行,表示是搜索程序本身,表示当前进程里面没有包含python的进程
然后我们再打开另外一个LX终端,在里面运行python,进入python环境
Image may be NSFW.
Clik here to view.
然后回到刚才的上面这个LX终端,再次运行sudo ps aux|grep python
Image may be NSFW.
Clik here to view.
会发现搜索结果里面多了一个PID等于1913的进程,运行的是python程序。
如何杀死不用的进程在某些情况下,进程一直在运行,可能是进入了死循环,这时候,常规办法可能无法删除掉这个进程,可以用下面的办法强制杀掉进程
使用sudo kill -9 PID 这个命令
例如,上面的python进程PID为1913,就运行sudo kill -9 1913杀掉python进程,然后再次查看进程,发现没了该进程:
Image may be NSFW.
Clik here to view.
此时,再切换到另外一个LX终端窗口,发现python程序被杀死强制被退出了:
Image may be NSFW.
Clik here to view.
今天的课程,主要讲的就是如何定义模块,如何使用模块,以及如果碰到死循环程序如何查询杀掉进程。
课后作业1.写一个死循环程序,循环内部每次sleep 3秒,运行该程序,然后强制退出程序,杀死该进程
2.网上寻找datetime函数包的用法,用2行代码重写输入年月日输出星期几(中文)
往期教程因为教程是系列教程,前后关联性非常强,请大家按照微信公众号【零基础学编程】的历史消息发布时间先后次序进行阅读。
QQ群简介欢迎大家加入QQ群 603559164 零基础学编程,交流学习,共同进步。