内容正文:
Python函数编程
课程名称
Python语言程序
教学内容
Python函数编程
课时
1
项目性质
□演示性 □验证性 □设计性 √综合性
授课班级
授课日期
授课地点
教学目标
借助Pycharm,建立Python3项目,并实现三个函数编程实验。
教学内容
1.借用Pycharm工具,建立Python3项目
2.有两个函数,一个可以计算两个整数之和,一个可以计算两个整数乘积。编写一个通用的函数能够在调用这两个函数时检查传入的类型
3.一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法
4.实现一个链表,并实现链表的添加节点以及删除节点操作容
教学重点
教学难点
教学准备
装有Python的计算机
教学课件PPT
2
学科网(北京)股份有限公司
教学过程
教学环节
教学内容与过程
(教学内容、教学方法、组织形式、教学手段)
课前组织
做好上课前的各项准备工作(打开计算机、打开课件、打开软件、打开授课计划、教案等),吸引学生注意力。
课程说明
【目的】
使学生从了解本节课的学习目标、学习重点、考评方式等方面明确课程学习的要求和目标。
课程内容描述
1.借用Pycharm工具,建立Python3项目
知识点
1)Pycharm工具下建立Python项目
2)项目中建立统一的UTF-8编码格式
3)项目中建立包名
实验目的
1)掌握Pycharm工具下建立Python项目的方法
实验环境
1)Oracle Linux 7.4
2)Jdk1.8.0_171
3)Pycharm
4)Python3.6.5
实验步骤
1) 打开Pycharm工具,建立项目与包名
1.鼠标双击桌面“pycharm”图标,打开pycharm工具,依次选择主菜单File->New Project…选项。
2.如果是第1次打开此工具会弹出“Welcome to PyCharm Community Edition”窗口,鼠标点击“Do not show again”,下次再打开工具时就不会弹出此窗口,然后选择“Create New Project”。
3.在弹出的Create Project窗口中,显示的Location对应的文本框中输入项目名project,点击Create按钮,完成项目的创建。
4.建立包名experiment,用于写清洗Python程序。具体做法:选中新建立的项目project->鼠标右键->New->Python Package。
5.在弹出的New Package窗口中的文本框内,输入要建立的包名(用户可自定义)“experiment”,点击OK按键,完成包名的创建。
6.此时在窗口左侧的窗口中的project项目下可以看到新建立experiment程序包,在该包下写实验相关的Python程序。
2)建立对中文支持良好的统一的UTF-8编码格式
1.设置统一的编码模式,使新生成的文件支持中文,统一设置utf-8编码。具体做法:File->settings->Editor->File and Code Templates->Python Script。在Python Script对应的文本模式中输入具体编码设置,点击OK按钮,完成设置。
[Code 001]:
#!/usr/bin/python
# -*- coding:utf-8 -*-
2.有两个函数,一个可以计算两个整数之和,一个可以计算两个整数乘积。编写一个通用的函数能够在调用这两个函数时检查传入的类型。
知识点
1)检查传入类型的方法
实验目的
1)掌握使用方法检查传入的类型是否正确
实验环境
1)Oracle Linux 7.4
2)Jdk1.8.0_171
3)Pycharm
4)Python3.6.5
实验步骤
1)新建One.py源代码文件。输入如下代码执行并查看结果
1.建立One.py文件,用于编写Python实验程序。具体做法:选中新建立的项目project-下新建立的包名experiment>鼠标右键->New->Python File。
2.在弹出的新建立Python文件(New Python file)窗口中显示的Name属性对应的文本框中输入文件名One,点击OK按键,完成文件的建立。
3.编写One.py文件的代码。具体代码如下:
[Code 002]:
#!/usr/bin/python
# -*- coding:utf-8 -*-
# 定义求和函数
def sum(a, b):
print (a + b)
def product(a, b): # 定义乘法函数
print (a * b)
def check(fun, a, b): # 定义检查函数
if isinstance(a, int) and isinstance(b, int):
fun(a, b)
check(sum, 5, 6)
check(product, 5, 6)
4.在One.py文件的空白处,鼠标右键选“Run‘One’”,运行代码。
5.在Pycharm工具当前项目窗口的底部看到运行的结果。如图所示。
3.一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法。
知识点
1)python的递归
实验目的
1)掌握使用python的递归
实验环境
1)Oracle Linux 7.4
2)Jdk1.8.0_171
3)Pycharm
4)Python3.6.5
实验步骤
1)新建Two.py源代码文件。输入如下代码执行并查看结果
1.建立Two.py文件,用于编写Python实验程序。具体做法:选中新建立的项目project-下新建立的包名experiment>鼠标右键->New->Python File。
2.在弹出的新建立Python文件(New Python file)窗口中显示的Name属性对应的文本框中输入文件名Two,点击OK按键,完成文件的建立。
3.编写Two.py文件的代码。具体代码如下:
[Code 003]:
#!/usr/bin/python
# -*- coding:utf-8 -*-
# 使用递归函数计算青蛙跳台阶的方法数
def f(n):
if n > 2:
return f(n-1) + f(n-2)
return n
print (f(6))
4.在Two.py文件的空白处,鼠标右键选“Run‘Two’”,运行代码。
5.在Pycharm工具当前项目窗口的底部看到运行的结果。如图所示。
4.实现一个链表,并实现链表的添加节点以及删除节点操作。
知识点
1)链表的实现
2)链表的添加,删除节点
实验目的
1)掌握使用链表的实现,链表的添加,删除节点
实验环境
1)Oracle Linux 7.4
2)Jdk1.8.0_171
3)Pycharm
4)Python3.6.5
实验步骤
1)新建Three.py源代码文件。输入如下代码执行并查看结果
1.建立Three.py文件,用于编写Python实验程序。具体做法:选中新建立的项目project-下新建立的包名experiment>鼠标右键->New->Python File。
2.在弹出的新建立Python文件(New Python file)窗口中显示的Name属性对应的文本框中输入文件名Three,点击OK按键,完成文件的建立。
3.编写Three.py文件的代码。具体代码如下:
[Code 004]:
#!/usr/bin/python
# -*- coding:utf-8 -*-
# 定义一个节点类
class Node:
prevNode = None
nextNode = None
value = None
# 定义初始化信息
def __init__(self, value, prevNode=None, nextNode=None):
self.value = value
self.prevNode = prevNode
self.nextNode = nextNode
# 定义链表类
class Lb:
nodeList = []
# 定义新增节点的方法
def addNode(self, node, targetNode=None):
if targetNode == None:
self.nodeList.append(node)
return
nextNode = targetNode.nextNode
targetNode.nextNode = node
node.prevNode = targetNode
node.nextNode = nextNode
targetIndex = None
for index, tmpNode in enumerate(self.nodeList):
if tmpNode is targetNode:
targetIndex = index
break
firstList = self.nodeList[:targetIndex + 1]
firstList.append(node)
self.nodeList = firstList + self.nodeList[targetIndex+1:]
# 定义删除节点的方法
def delNode(self, node):
nodeIndex = None
for index, tmpNode in enumerate(self.nodeList):
if tmpNode is node:
prevNode = tmpNode.prevNode
nextNode = tmpNode.nextNode
prevNode.nextNode = nextNode
nextNode.prevNode = prevNode
nodeIndex = index
break
self.nodeList = self.nodeList[:nodeIndex] + self.nodeList[nodeIndex + 1:]
# 创建三个节点
node1 = Node(1)
node2 = Node(2)
node3 = Node(3)
# 创建链表,新增并删除节点
lb = Lb()
lb.addNode(node1)
lb.addNode(node3, node1)
lb.addNode(node2, node3)
lb.delNode(node3)
print ([node.value for node in lb.nodeList])
4.在Three.py文件的空白处,鼠标右键选“Run‘Three’”,运行代码。
5.在Pycharm工具当前项目窗口的底部看到运行的结果。如图所示。
总结评价
本讲主要学习了:
1.借用Pycharm工具,建立Python3项目
2.有两个函数,一个可以计算两个整数之和,一个可以计算两个整数乘积。编写一个通用的函数能够在调用这两个函数时检查传入的类型
3.一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法
4.实现一个链表,并实现链表的添加节点以及删除节点操作
$$