当前位置:首页>python>跟着NOAI考纲学Python,学完就能考,第12课

跟着NOAI考纲学Python,学完就能考,第12课

  • 2026-09-02 19:05:19
跟着NOAI考纲学Python,学完就能考,第12课

每天一个知识点,带你自学NOAI,加入我们吧~

前面学的print、len、range这些都是Python自带的函数,不用额外操作就能直接用。但Python还有很多功能是"打包好的工具箱",需要你先说一声"我要用"——这就是模块。一句import,就能打开一个新工具箱。

import导入模块

用 import 把模块导进来,然后用 模块名.函数() 调用:

importmathprint(math.sqrt(16))print(math.pi)

4.03.141592653589793

拆开看:

•import math — 把math模块导进来

•math.sqrt(16) — 调用math模块里的sqrt函数,算16的平方根

•math.pi — 这不是函数,是math模块里存的一个常量,圆周率

import就像去图书馆借书——书(模块)一直在那里,但你得先借过来(import),才能翻开用。

math模块

math模块提供各种数学函数,NOAI考试里经常用到:

importmathprint(math.sqrt(25))    # 平方根print(math.pow(2, 10))   # 2的10次方print(math.ceil(3.2))   # 向上取整print(math.floor(3.8))  # 向下取整

5.01024.043

ceil 是天花板,往上取;floor 是地板,往下取。记住这两个英文单词就不会混。

random模块

random模块用来生成随机数,写游戏、模拟实验的时候特别有用:

importrandom# 随机整数,1到10之间(包含1和10)print(random.randint(1, 10))# 从列表里随机挑一个fruits = ["苹果", "香蕉", "橘子"]print(random.choice(fruits))

7香蕉

每次运行结果可能不一样——因为是随机的。

shuffle 可以把列表打乱顺序(注意,这个方法直接修改原列表):

importrandomcards = [1, 2, 3, 4, 5]random.shuffle(cards)print(cards)

[3, 1, 5, 2, 4]

from...import

每次都写 math.sqrt() 嫌长?可以用 from...import 直接把函数"拿出来":

frommathimportsqrt, piprint(sqrt(16))  # 不用写math.了print(pi)

4.03.141592653589793

区别就一条:import math 之后要写 math.sqrt(),from math import sqrt 之后直接写 sqrt() 就行。

给模块取别名

还可以用 as 给模块取个短名字:

importmathasmprint(m.sqrt(9))print(m.pi)

3.03.141592653589793

取别名后,原来的名字 math 就不能用了,只能用 m。这个写法在后面学更复杂的模块时会经常见到。

易错点

错误1忘了import就直接用 — 直接写 sqrt(16) 会报 NameError,必须先 import math 或 from math import sqrt。

错误2import了模块但忘了加模块名 — import math 之后写 sqrt(16) 而不是 math.sqrt(16),照样报 NameError。要么加前缀,要么一开始就用 from math import sqrt。

动手试试

自己先想,想完了去香农平台上写代码跑一遍验证。

练习1:预测输出

下面这段代码运行后,屏幕上会输出什么?

importmathprint(math.ceil(4.1))print(math.floor(4.9))print(math.ceil(5.0))

提示:ceil是天花板往上,floor是地板往下。整数呢?

练习2:找bug

下面这段代码想算9的平方根,但报错了。哪里有问题?

importmathresult = sqrt(9)print(result)

提示:回头看看"易错点"第2条。

练习3:写代码

用random模块模拟掷两个骰子10次,每次打印两个骰子的点数和总点数。格式:骰子1: 3, 骰子2: 5, 总计: 8

提示:for循环 + randint(1, 6),可以用f-string拼输出。

去平台上手写代码

学会模块,Python的能力一下子扩大了很多。回顾一下:

•import 模块名 — 导入模块,用 模块名.函数() 调用

•from 模块 import 函数 — 直接导入函数,不用加前缀

•import 模块 as 别名 — 给模块取短名字

•math — 数学计算:sqrt、pow、ceil、floor、pi

•random — 随机数:randint、choice、shuffle

这篇文章讲的是香农NOAI学习平台"Python基础"模块的第十二课。平台上有更多的练习题,写完代码点运行,对不对立刻就知道。

香农NOAI学习平台地址:shannon.arpa.school微信扫码登录就能用,免费。找到「Python基础」→「模块」,从第一道题开始写。

下一篇讲排序——怎么把一堆乱七八糟的数据按大小排好?手动排一次你就明白排序算法的原理了。

IOI2026国家队选拔第一名的他,IOAI国际人工智能奥赛也拿到了银牌
当年的IOI中国国家队成员,20年后过得怎么样?
IOAI人工智能奥赛获奖选手,被哪些世界顶尖大学抢走了?
NOAI人工智能奥赛与5大奥赛齐名,却不在白名单,还值得孩子花时间吗?
数学和信息学双料奥赛金牌邓明扬,最近一篇顶会论文让AI圈炸了
我们从2018年开始关注青少年AI竞赛
见证了NOAI从无到有
这里为你拆解这个赛事的每一个关键问题
欢迎关注公众号~
👇NOAI复赛集训开始招募
👇加入NOAI学习交流群
👆消除信息壁垒、少走弯路
👆获取往届真题、比赛资源
👆链接牛娃家长、抱团互助

最新文章

随机文章