乐趣区

关于python:oeasy教您玩转python-006-hello-world

Hello World!

回顾上次内容

  • python3 的程序是一个 5.3M 的可执行文件

    • python3 外面全都是 cpu 指令
    • 能够执行的那种指令
    • 咱们能够把指令对应的汇编找到

      • objdump -d ~/python3 > python3.asm
  • 汇编语句是和以后机器架构的指令集相干的

    • uname -a能够查问指令集
  • 咱们执行的过程其实就

    • 零碎执行 python3 这个可执行文件
    • 给了 python3 一个参数hello.py
    • python3对于 hello.py 一句句的解释执行
    • 在显示器输入了hello world
    • python3执行结束
    • 把控制权交回给 shell
  • 这就是咱们执行 hello world 的过程
  • 为什么咱们学编程总是从 hello world 开始呢?🤔

为啥总是Hello World

奇怪🧐

  • 不管学习什么编程语言
  • 总是从 Hello World 开始
  • 为什么呢?🤔

起源

  • 这所有都要从头说起

    • 目前操作系统的老祖宗 unix
    • 和他对应的编程语言 c
    • 是所有的开始

  • 1969 年,因为所在的 Multics 我的项目失败
  • 鸿鹄之志的两人

    • Kenneth Thompson
    • Dennis Ritchie
  • 心愿能在 PDP 机器上持续玩一个游戏

    • 这个游戏是 Multics 下的 star travel
    • 他们想要做一个操作系统 unix
  • 为了制作操作系统

    • 他们发明了 c 语言的编译器
  • 过后

    • c 是他们为了开发 unix 而制作的语言
    • unix 是为了能玩 star travel 而制作的零碎
  • cunix 只能运行在过后的机器上

    • 没有文档
    • 没有书籍
    • 甚至没有人晓得

hello world!

  • 与他们同在 bell 实验室的 Brian Wilson Kernighan

    • 开始写 c 语言的相似于文档说明书的货色

手稿

  • 整体的函数叫做 main函数

    • 外面输入函数就叫做 printf函数
  • 不论是 main,还是printf 都有 小括号

    • 小括号 从那个时候就和函数相干
  • 为什么输入字符要用 printf 来当做函数名呢?

print 来历

  • 方才那 1974 年的手稿😱

    • 写在打字机用纸的下面
    • 打字机就是过后的显示器
    • 所以用 print 来示意输入
    • f 的意思是 format 格局
    • printf 是按格局输入
  • printf 函数 前面有 小括号

    • 小括号 外面放的是 函数 参数
    • print("hello world")

      • 函数 print参数"hello world"
      • 双引号 引起来意味着hello world 字符串
      • 输入的内容就是这个字符串 ("hello world")
  • c 语言 开始

    • 最早的入门教学程序都做一个hello world
    • 习惯成自然之后
    • 所有的编程语言第一个例子都是hello world
    • 是一种规矩或者文化

成书

  • 1978 年,KernighanRitchie 出版了这本书

    • 不厚,很薄
    • 轻松的语言格调
    • 因为 c 的目标就是让人像玩一样编程
    • 而不是记忆各种 cpu 汇编指令
  • 蓬勃发展的计算机技术

    • 使得 c 语言成为零碎语言的老大
    • python 的源代码就是用纯 c 编的
    • linux 内核 也是用纯 c 编的
    • 所以 c 还是十分外围的啊
  • 虽说 python 是用纯 c 编写的

    • 不过 python 一旦呈现之后就能够简化好多货色

内置函数

  • 咱们能够看到游乐场上来就自带一些函数和模块

  • 比方 dir() 这个函数
  • 调用这个函数能够晓得以后游乐场载入了哪些模块
  • 比方 builtins 这个模块
  • builtins 外面又有些什么呢?

dir()

  • dir(__builtins__)

  • buildins 意思是在外面构建好的

    • 这外面有好多内置的函数
    • 包含咱们相熟的

      • exit()
      • print()
      • dir()
  • 如果我想要查问更具体的信息应该如何呢?

help(__builtins__)

  • help(__builtins__)

  • 咱们能够查问到 __builtins__ 模块的帮助文件
  • 返回的这些函数和子模块都隶属于 __builtins 这个模块
  • 除了内置的、这些不必引入就能够用的模块之外

    • 还能够引入内部模块

导入模块

import __hello__

  • 这个模块能够输入经典的一句话
  • 还能够把新模块导入到游乐场
  • 留神!

    • 导入 __hello__ 模块前后游乐场中的模块减少了

总结

  • hello world 不是素来就有的
  • 来自于 unixc
  • 尽管咱们明天有各种先进的学习伎俩
  • 最早的高级语言学习是从最早的那张打字机用纸的手写代码起源的

    • 所以输入用的是 print 打印
    • 最早输入的是字符串是 "hello world"
    • 这就成了一个迷因
  • 等等!

    • 计算机外面不都是二进制的 0 和 1 吗
    • 哪里来的hello 中的 h 之类的字符呢?🤔
  • 咱们下次再说!👋
退出移动版