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

Python60日基础学习打卡D30

回顾:

  1. 导入官方库的三种手段
  2. 导入自定义库/模块的方式
  3. 导入库/模块的核心逻辑:找到根目录(python解释器的目录和终端的目录不一致)
# 直接导入
from random import randint
print(randint(1, 10)) # 导入自定义库
import module
module.hello()
from module import hello
hello()# 不同目录下
import module1.module
module1.module.hello()

场景一

main.py和 rectangle.py都在同一目录

运行方案:直接在终端python main.py

场景二

main.py和 rectangle.py都在根目录的子目录 model下

运行方案:

1. 运行命令:python model/main.py

2. 进入路径:cd xxx(main的相对路径),然后执行python main.py

(注意如果先cd后,就不能采用第一个命令了)

场景三

main.py在根目录,rectangle.py在子目录model下

运行方案:直接在终端python main.py

场景四

main.py和rectangle.py都在根目录的子目录model下,并且model下还有子目录 utils(跨目录导入)

项目根目录

├── rectangle2.py

└── utils/

    ├── __init__.py   (必需添加,将 model 目录标记为一个可导入的包)

    └── rectangle.py

└── model/

    └── main.py

运行方式

python -m model.main

如果直接使用python model/main.py,会报错,

当使用 python -m model.main 时,Python 会将当前目录(即项目根目录)添加到 sys.path 的开头。

————————————————

本文参考原文链接如下
                        
原文链接:https://blog.csdn.net/2301_77865880/article/details/148054820

http://www.xdnf.cn/news/7340.html

相关文章:

  • 从技术层⾯来说深度SEO优化的⽅式有哪些?
  • CEF源码历史版本编译避坑指南
  • 基于 Keil 的 STM32 全模块开发
  • Windows系统编译Qt使用的kafka(librdkafka)
  • vue2、vue3项目打包生成txt文件-自动记录打包日期:git版本、当前分支、提交人姓名、提交日期、提交描述等信息 和 前端项目的版本号json文件
  • 47、C#可否对内存进⾏直接的操作?
  • 【Unity网络编程知识】Unity的 UnityWebRequest相关类学习
  • 测试自动化开发框架全解析
  • winfrom中创建webapi
  • VTK|显示三维图像的二维切片
  • 【2025最新】Spring Boot + Spring AI 玩转智能应用开发
  • WPF中资源(Resource)与嵌入的资源(Embedded Resource)的区别及使用场景详解
  • UE5在C++项目中判断不同平台
  • 调研函模板可参考,以无人机职业技能调研为例
  • RSA(公钥加密算法)
  • 机器学习(14)——模型调参
  • Redis 学习笔记 5:分布式锁
  • 软件工程-项目管理
  • 嵌入式(C语言篇)Day12
  • ubuntu 20.04 运行和编译LOAM_Velodyne
  • 智能呼叫中心系统的功能
  • 手机怎么查看网络ip地址?安卓/iOS设备查询指南
  • 基于小波包神经网络和D-S理论的滚动轴承故障诊断方法
  • Python:操作Excel按行写入
  • Spring Boot 与 RabbitMQ 的深度集成实践(四)
  • IDE 使用技巧与插件推荐
  • WEB安全--SQL注入--Oracle注入
  • uniapp 小程序 CSS 实现多行文本展开收起 组件
  • Python元组全面解析:从入门到精通
  • VS2017编译openssl3.0.8