1.python中,通过return来实现函数内部值返回调用函数代码
<!–more–>
a= get_level(50)
b= get_level(80)
c= get_level(90)
def get_level(score):
if score > 80:
return “优秀”
elif score >60:
return “及格”
else:
return”不及格”
print(a,b,c)
<!–more–>
**2.整数和字符串不能直接拼接,需要先转换字符串**
def print_info (name,age,title):
print(“名字:”+name )
print(“年龄:”+str(age))
print(“编号:”+title)
print_info(“小明”,21,”实习生”)
**3.python函数分为 库函数和用户自定义函数**
len函数: 接受函数参数,类型是列表或者字符串,返回值为列表或者字符串的长度
print函数:接受一个或者多个字符串,把他们打印在屏幕上,没有返回值.
函数:通过函数的形式给代码起一个名字,之后只要在代码中执行这个函数就可以起到和代码一样的效果.
函数的参数: 当函数中用到的变量需要从外部传入时,这样的变量声明为参数.
调用函数时候根据需求传入不同的参数,使得同一个函数可以同时处理多个任务.
函数返回值:当函数需要把内部的结果告诉外面的调用方法时候,可以用过return语句实现.return后面的内容,成为这个函数的返回值.
4.任务管理小工具
任务描述:
1)新增待办 2)删除已有待办 3)标记一个待办为已完成 4)查看所有完成待办并区别展示
准备工作:
1)导入系统库函数 2)获取用户输入内容 3)清除之前打印的内容
任务分解:
软件设计->拆分->组合
1)功能拆分子需求 2)针对子需求代码实现 3)讲子需求代码组合成软件完整功能
功能分解:
管理(保存数据,增加删除操作) 打印菜单(打印菜单及当前待办) 用户输入(获取用户输入,执行命令)
任务代码实现:
import sys
class task:
def __init__ (self,text):
self.text= text
self.status= “未完成”
def mark_finished(self):
self.status =”已完成”
class tasklist:
def __init__(self):
self.tasks =[]
def add_task(self,task):
self.tasks.append(task)
def remove_task(self,idx):
del self.tasks[idx]
def get_finished_tasks(self):
result = []
for i in range(0,len(self.add_task)):
if self.tasks[i].status ==[“已完成”]:
result.append(self.add_task[i])
return result
def get_unfinished_tasks(self):
result =[]
for i in range (0,len(self.task)):
if self.task[i].staus ==”未完成”:
result.append(self.task[i])
return result
def print_menu():
print(“hello!”)
print(“请问希望做什么?”)
print(“1.添加待办”)
print(“2.删除待办”)
print(“3.标记待办完成”)
print(“4.推出”)
def print_tasks(finished,unfinished):
print(“unfinished:”)
for i in range(0,len(unfinished)):
print(i,unfinished[i].text)
print(“”)
print(“已经完成的待办:”)
for i in range (0,len(finished)):
print(i,finished[i].text)
print(“”)
def print_all_tasks(all_tasks):
for i in range(0,len(all_tasks)):
print(i,all_tasks[i].text)
while True:
my_task_list = tasklist()
finished_tasks = my_task_list.get_finished_tasks()
unfinished_tasks=my_task_list.get_unfinished_tasks()
print_tasks(finished_tasks, unfinished_tasks)
print_menu()
command= input(“输入序号”)
if command ==”1″:
text=input(“请输入待办添加的内容”)
task =task(text)
my_task_list.add_task(task)
elif command ==”2″:
clear_output()
print_all_tasks(my_task_list.tasks)
idx= input(“请输入想删除的待办序号”)
idx=int(idx)
my_task_list.remove_task(idx)
elif command == “3”:
clear_output()
print_all_tasks(my_task_list.tasks)
idx = input(“请输入希望标记完成的序号”)
idx= int(idx)
my_task_list.tasks[idx].mark_finished()
elif command ==”4″:
break
elif command ==”5″:
clear_output()
print_all_tasks(my_task_list.tasks)
idx=input(“请输入希望更改的序号”)
idx=int(idx)
new_text =input(“请输入新的待办内容”)
my_task_list.tasks[idx].text = new_text
5.总结 准备阶段-分解阶段
input和clear_output函数使用
input是对外部输入对话框接受 ,clear_output是来将之前打印的内容清除
实现方法 (分解,管理模块,打印模块,整合模块三部分)
实现模块: task,待办管理,tasklist,提供主要数据存储和操作
打印模块:tasklist类中的方法实现打印未完成和已完成的待办.
整合模块:通过while循环,调用打印模块和待办模块的实现菜单打印——用户输入–执行命令循环
执行命令的部分用if-elif-else语句,来对用户输入的不同命令进行处理