Skip to content

Latest commit

 

History

History
186 lines (131 loc) · 4.79 KB

215-820488-函数嵌套调用_分步骤拆开_localtime_asctime.sy.md

File metadata and controls

186 lines (131 loc) · 4.79 KB
show version enable_checker
step
1.0
true

输出时间

回忆上次内容

  • 上次完成了
    • 多参数的函数
    • 多个参数形成一个参数列表
    • 调用时
      • 这些参数会依次序进行参数赋值
      • 进行相加操作
      • 把最终的和作为函数的返回值给到print
      • print完成调用过程
  • 函数可以嵌套吗?🤔

复习代码

print(add(a, b))
  • 首先要分清
    • 函数
    • 参数
  • 就像要 分清
    • 工艺
    • 原料

原料与产品

图片描述

  • 模型车间
    • 原料 是 木材
    • 工艺 是将木材 制作为木头模型
  • 上色车间
    • 原料 是 木头模型
    • 工艺 是给木块 上色

图片描述

  • 本车间的产品 是 下一个车间的原料
    • 函数的嵌套 也是如此
    • 本函数的返回值 是 外部函数的参数

嵌套的函数

  • 这长串东西 是 有规律的
    • 首先 什么是 time
import time
ascii_time = time.asctime( time.localtime( time.time()))
print (ascii_time)
  • time 是一个module(包)
    • 这个包里面 有些什么呢?

图片描述

  • 这个帮助文件好长啊

time包中

  • dir(time)
    • 这里面有这些函数吗?

图片描述

  • 确实有的

翻到 最后

  • 可以找到
    • time.time()
    • time.localtime()
    • time.asctime()

图片描述

  • 这3个都是 time包里面的函数
  • 可以只看 time.time的帮助吗?

具体函数 帮助手册

  • help(time.time)

图片描述

  • show_time.py中
    • 时间日期字符串 是 一行写成的
      • ascii_time = time.asctime(time.localtime(time.time()))
  • 函数是 一层层嵌套的
    • 可以分拆成 几行吗?

分开写

  • time.time这个函数 不接受参数

    • 返回的是 一个浮点数
  • 原来

    • 只用一行
    • 函数 嵌套调用

图片描述

  • 现在
    • 试试 把函数嵌套调用 拆开
    • 不用 嵌套
      • 分开写
  • 一点点 来剖析

分步骤的过程

  • 函数 嵌套调用
    • 首先通过调用 time.time()函数
      • 得到了ticks
    • 然后通过调用 localtime(ticks)函数
      • 得到了local_time
    • 最后通过调用 asctime(localtime)
      • 得到了ascii_time

图片描述

  • 这分步的过程 就像工厂车间

车间 和 原料

图片描述

  • 落实到我们这里就是

图片描述

  • 那么 这些函数
    • time
    • localtime
    • asctime
    • 都是什么意思
  • 分别help一下

time.time()

  • help(time.time)

图片描述

  • 这里有两个time有点乱
  • 我们区分一下颜色
    • 前面的是红色的 time
    • 后面的是绿色的 time()
  • time.time()
    • 红色的是 time 这个包(module)
      • time 包(module)里面有很多函数(function)
    • 绿色的是 time() 函数
      • 一对儿 圆括号指的是 函数调用
    • 红色绿色之间的.的意思是 里面的
  • time 包里调用 .(里面的) time() 这个函数(function)
    • 这个 time() 函数 就是 time里面 的函数
  • 那么 这个time.time()到底返回什么值 呢?

总结

  • time 是一个 模块module
    • ascii_time = time.asctime( time.localtime( time.time()))
      • 是一个嵌套调用
      • 分步的过程
      • 就像工厂车间
  • 最里面是
    • 调用一下time.time()看看

图片描述

  • time.time()返回的这一串长长的数字是什么意思呢?🤔

图片描述

  • 我们下次再说!👋