当前位置: 首页 > news >正文

Python打卡训练营day30-库的导入

知识点回顾:

  1. 导入官方库的三种手段
  2. 导入自定义库/模块的方式
  3. 导入库/模块的核心逻辑:找到根目录(python解释器的目录和终端的目录不一致)

作业:自己新建几个不同路径文件尝试下如何导入

官方库包括 Python 标准库和通过pip安装的第三方库,

# 方式1:直接导入整个模块
import math
print(math.sqrt(16))  # 4.0# 方式2:导入模块中的特定对象
from math import sqrt, pi
print(sqrt(25))  # 5.0
print(pi)        # 3.141592653589793# 方式3:给模块起别名(常用于长名称或避免命名冲突)
import numpy as np
import pandas as pd
arr = np.array([1, 2, 3])

自己的库,目前这里导入库的文件和被导入的文件都使用.py文件,会方便一点

同目录下导入一下28号的圆类

from day28 import Circlecir1 = Circle(2)
print(cir1.calculate_area())

12.566370614359172

导入子目录的库,这里似乎环境不同也可能会导致导入失败,环境真是最大的难题啊

from file1.square import Rectanglerec1 = Rectangle(4,5)
print(rec1.calculate_area())

上级目录导入麻烦一点,添加__init__.py文件将目录转换为包也仍无法正确导入,使用绝对路径避免报错,其他方式可能需要进行更多尝试找出报错原因


import sys
import os# 获取当前脚本的绝对路径,向上找两级到根目录(project/)
current_dir = os.path.dirname(os.path.abspath(__file__))
root_dir = os.path.dirname(current_dir)  # 定位到 project/
sys.path.append(root_dir)               # 添加根目录到路径# 绝对导入
from day28 import Circlec = Circle(3)
print(c.calculate_area())

相关文章:

  • I.MX6ULL_Linux_系统篇(26) buildroot分析
  • 南京邮电大学《智能控制技术》期末抢救(上)
  • 高可用集群keepalived
  • 01_07小结
  • queue和priority_queue及其函数
  • 【438. 找到字符串中所有字母异位词】
  • Python训练营---Day34
  • 【昇腾开发者训练营:Dify大模型部署实战】MindIE + Dify + DeepSeek + Embedding模型 + Rerank模型
  • springboot集成日志配置文件
  • 信息学奥赛及各种程序设计竞赛中常见的名词解释
  • 通过contenteditable实现仿豆包智能输入框
  • 生成模型——PixelRNN与PixelCNN
  • 常见算法题目2 - 给定一个字符串,找出其中最长的不重复子串
  • MySQL慢日志——动态开启
  • (15)关于窗体的右键菜单的学习与使用,这关系到了信号与事件 event
  • 《C 语言内存函数超详细讲解:从 memcpy 到 memcmp 的原理与实战》
  • vue——v-pre的使用
  • 安装openEuler操作系统
  • 强者的本质是什么?
  • Leetcode 2792. 计算足够大的节点数
  • 北辰正方建设集团有限公司官方网站/今日实时热点新闻事件
  • 网站 一级域名 二级域名/百度问答app下载
  • 网站开发外包计入什么科目/营销广告网站
  • 山东做网站建设公司/百度托管公司
  • 做网站花费/什么平台可以做引流推广
  • wordpress 可以干嘛/seo关键词首页排名