Python学习笔记6函数和代码复用
2024-10-15 22:44:31
1、函数
(1)定义:
(2)函数调用
(3)函数的参数传递
参数传递的两种方式:函数调用时,参数可以按照位置或名称的方式传递
(4)函数的返回值
(5)局部变量和全局变量
(6)lambda函数
2、实例:七段数码管的绘制
import turtle
def drawLine(draw):
turtle.pendown() if draw else turtle.penup()
turtle.fd(40)
turtle.right(90)
def drawDigit(digit):
drawLine(True) if digit in [2,3,4,5,6,8,9] else drawLine(False)
drawLine(True) if digit in [0,1,3,4,5,6,7,8,9] else drawLine(False)
drawLine(True) if digit in [0,2,3,5,6,8,9] else drawLine(False)
drawLine(True) if digit in [0,2,6,8] else drawLine(False)
turtle.left(90)
drawLine(True) if digit in [0,4,5,6,8,9] else drawLine(False)
drawLine(True) if digit in [0,2,3,5,6,7,8,9] else drawLine(False)
drawLine(True) if digit in [0,1,2,3,4,7,8,9] else drawLine(False)
turtle.left(180)
turtle.penup()
turtle.fd(20)
def drawDate(date):
for i in date :
drawDigit(eval(i))
def main():
turtle.setup(800,350,200,200)
turtle.penup()
turtle.fd(-300)
turtle.pensize(5)
drawDate('')
turtle.hideturtle()
turtle.done()
main()
运行结果:
import turtle,time
def drawGap():
turtle.penup()
turtle.fd(5)
def drawLine(draw):
drawGap()
turtle.pendown() if draw else turtle.penup()
turtle.fd(40)
drawGap()
turtle.right(90)
def drawDigit(digit):
drawLine(True) if digit in [2,3,4,5,6,8,9] else drawLine(False)
drawLine(True) if digit in [0,1,3,4,5,6,7,8,9] else drawLine(False)
drawLine(True) if digit in [0,2,3,5,6,8,9] else drawLine(False)
drawLine(True) if digit in [0,2,6,8] else drawLine(False)
turtle.left(90)
drawLine(True) if digit in [0,4,5,6,8,9] else drawLine(False)
drawLine(True) if digit in [0,2,3,5,6,7,8,9] else drawLine(False)
drawLine(True) if digit in [0,1,2,3,4,7,8,9] else drawLine(False)
turtle.left(180)
turtle.penup()
turtle.fd(20)
def drawDate(date):
turtle.pencolor("red")
for i in date :
if i == '-':
turtle.write("年",font=("Arial", 18, "normal"))
turtle.pencolor("green")
turtle.fd(40)
elif i == '=':
turtle.write("月",font=("Arial", 18, "normal"))
elif i == '+':
turtle.write("日",font=("Arial", 18, "normal"))
else:
drawDigit(eval(i))
def main():
turtle.setup(800,350,200,200)
turtle.penup()
turtle.fd(-300)
turtle.pensize(5)
drawDate(time.strftime("%Y-%m=%d+",time.gmtime()))
#drawDate('20181010')
turtle.hideturtle()
turtle.done()
main()
运行结果:(不知道问题出在哪里了)
最新文章
- SAP中删除假脱机请求
- 拉曼软件在win8上运行出错问题
- 转:jQuery弹出二级菜单
- OCJP(1Z0-851) 模拟题分析(六)over
- android 定时器AlarmManager
- clip to bounds 和mask to bounds的区别
- JavaScript- 获得TreeView CheckBox里选中项的值
- vbs运行批处理
- Golang Kernel For Jupyter-NoteBook
- keytool导入导出多条目对比【原】
- 廖雪峰Java7处理日期和时间-3java.time的API-1LocalDateTime
- 【读书笔记】Data_Mining_with_R---Chapter_2_Predicting Algae Blooms
- JMeter监控内存及CPU ——plugin插件监控被测系统资源方法
- SQL Server中数据库文件的存放方式,文件和文件组 (转载)
- studying Bitcoin
- 07 -模型层ORM
- PHP面试题一
- python 编程语言基础技术框架
- curd 插件
- Real-Time SQL Monitoring using DBMS_SQLTUNE