python中的模块以及包导入
python中的导入关键字:import 以及from import
1、import
import一般用于导入包以及模块。
不过有个小问题:
(1)当导入的是模块的时候是可以直接可以使用模块内的函数以及变量的,
比如说:包名为:com.test,在这个包底下有个模块为a.py,那么当其他包中的模块想要引入a模块的时候写法为
import com.test.a
在b.py中调用的方式为:com.test.a.(a中的函数或者变量),而不能直接写为a.(a中的函数名或者变量)
(2)当导入的是包名的时候,例如:import com.test
这个时候会发现,不能使用test包下的模块,解决方法是在test包下新建一个_init_.py文件(在pycharn中,当你新建package时,都会自动生 成一个_ini_.py文件),在这个文件中书写
from . import a
在上面这句话中 . (点)代表的是当前文件夹。这是因为在进行import 包名的操作的时候其会调用_init_.py文件。
这样就可以在b模块中进行调用了,本来是想省事的,想在_init_.py中使用from . import *来将test包下的模块都进行引入,然后发现并不可以, 只能一个一个模块的进行引入。
调用方法同上,也是通过(包名.模块名.方法或者变量名)进行调用
2、from .. import ..
一般写法为from 包名 import 模块名或者是 from 模块名 import 函数名
这种方法写起来就比较直观一点,也不用书写_init_.py文件,只用将相应的模块名或者模块中的函数名进行引入即可,调用的时候直接通过模块名 进行调用,不能通过(包名.模块名.函数名)进行调用。
注意:上述的操作仅仅适用于在同一个文件夹下不同包之间进行调用。
如有写的有误的地方,欢迎大家指出。
python中的模块以及包导入的更多相关文章
- python中的模块和包
模块 一 什么是模块 模块就是一组功能的集合体,可以通过导入模块来复用模块的功能. 比如我在同一个文件夹定义两个.py文件,分别命名为A.py和B.py,那么可以通过在A文件里通过import B来使 ...
- Python中的模块与包
标准库的安装路径 在import模块的时候,python是通过系统路径找到这些模块的,我们可以将这些路径打印出来: >>> pprint.pprint(sys.path) ['', ...
- 【Python实战】模块和包导入详解(import)
1.模块(module) 1.1 模块定义 通常模块为一个.py文件,其他可作为module的文件类型还有".pyo".".pyc".".pyd&qu ...
- python中的模块及包及软件目录结构规范
知识内容: 1.模块的定义与分类 2.模块的导入 3.模块与包 4.不同目录下的模块调用 一.模块的定义与分类 1.什么是模块 模块就是实现了某个功能的代码集合,模块是由一大堆代码构成的 类似于函数式 ...
- Python之路-Python中的模块与包
一.模块简介 在实际开发中我们不可能不用到系统的标准模块,或第三方模块. 如果想实现与时间有关的功能,就需要调用系统的time模块.如果想实现与文件和文件夹有关的操作,就需要要用到os模块. 每一个 ...
- 面试---Python中的模块和包是什么?
python模块是: 自我包含并且有组织的代码片段为模块. 表现形式为:写的代码保存为文件.这个文件就是一个模块.sample.py 其中文件名smaple为模块名字. python包是: 包是一个有 ...
- [19/10/16-星期三] Python中的模块和包、异常、操作文件
一.模块 # 模块(module) # 模块化,模块化指将一个完整的程序分解为一个一个小的模块 # 通过将模块组合,来搭建出一个完整的程序 # 不采用模块化,统一将所有的代码编写到一个文件中 # 采用 ...
- Python之模块和包导入
Python之模块和包导入 模块导入: 1.创建名称空间,用来存放模块XX.py中定义的名字 2.基于创建的名称空间来执行XX.py. 3.创建名字XX.py指向该名称空间,XX.名字的操作,都是以X ...
- Python中的模块介绍和使用
在Python中有一个概念叫做模块(module),这个和C语言中的头文件以及Java中的包很类似,比如在Python中要调用sqrt函数,必须用import关键字引入math这个模块,下面就来了解一 ...
随机推荐
- camunda流程实例启动的一些简单操作
public class ZccRuntimeService { RuntimeService runtimeService; RepositoryService repositoryService; ...
- 热修复设计之CLASS_ISPREVERIFIED(二)
阿里P7移动互联网架构师进阶视频(每日更新中)免费学习请点击:https://space.bilibili.com/474380680本篇文章将继续从CLASS_ISPREVERIFIED实战来介绍热 ...
- 为什么javaBean要有get/set方法的设计
可以应对将来的修改,比如有一个以长度计算的项目开发好了,过段时间客户说这个项目要在美国上市,有了javaBean只要把所有以厘米计算的单位都乘以2.54转化为正确单位交给客户 public class ...
- 微服务-熔断器 Hystrix 的原理与使用
前言 分布式系统中经常会出现某个基础服务不可用造成整个系统不可用的情况, 这种现象被称为服务雪崩效应. 为了应对服务雪崩, 一种常见的做法是手动服务降级. 而Hystrix的出现,给我们提供了另一种选 ...
- chrome表单禁止自动填充密码
在用户登录成功以后,chrome会提示用户记住密码. 用户退出以后若前往注册.忘记密码页时会自动填充密码. 若不希望自动填充密码,只需在input里设置autoComplete="new-p ...
- springMVC的数据封装
编写实体类: package cn.mepu.domain; /** * @User 艾康 * @create 2019-11-12 13:56 */ public class User { priv ...
- alter update
## sql alter update 添加.修改.删除字段 ## 添加列名alter table 表名 add 列名 列类型;alter table 表名 add 列名 列类型 not null d ...
- CFgym100020 Problem J. Uprtof
题意:给你n个点m无向条边.每个点是黑色或者白色的.m条边第一条边边权为2^m,第二条边边权为2^(m-1)....... .在这个图上选择一些边连起来,使得满足:每个黑点连奇数条边,每个白点连偶数条 ...
- Dubbox服务的消费方配置
在src/main/resources下创建applicationContext-web.xml <?xml version="1.0" encoding="UTF ...
- php linux下安装xml扩展
1.进入PHP安装源码包,找到ext下的ftp,进入 cd /home/local/php-5.6.25/ext/xml 2./usr/local/php/bin/phpize 3../configu ...