from module import 和 import 的区别

最近在用codecademy学python,遇到一些题目错误,小小记录一下

如from math import sqrt是把sqrt作为本文件的方法导入进来了,使用的时候只需要直接调用sqrt。

而如果import是import math,那么调用的时候要采用math.sqrt的方式。

那么如果在自己的文件里定义了相同名字的函数怎么办呢,来实验一下


1

2

3

4

5

from math import sqrt 

def sqrt(n): 

    return 

print sqrt(13689

raw_input()

运行py文件输出13689,所以自己定义了函数会自动屏蔽掉。

所以大量引用import math.*是个比较好的办法,from math import *就容易出错了,当然用到很少的函数且次数较多时上面这种办法会比较合适。

另外python不支持像java那样import math.sqrt

时间: 2024-11-08 23:19:56

from module import 和 import 的区别的相关文章

js中import和require的区别

js中import和require的区别ES6标准发布后,module成为标准,标准使用是以export指令导出接口,以import引入模块.但是在我们一贯的node模块中,我们依然采用的是CommonJS规范,使用require引入模块,使用module.exports导出接口. require它相当于module.exports的传送门,module.exports后面的内容是什么,require的结果就是什么,对象.数字.字符串.函数……再把require的结果赋值给某个变量,相当于把re

Python form...import...和import的区别(自己理解的)

Python有两种导入包和模块的方式,区别如下 form...import... import 相对导包 导入不同包子模块 可以导入模块所需变量/函数/类   init文件的__all__特殊变量(模块列表)               import 语句 import_stmt ::= "import" module ["as" identifier] ("," module ["as" identifier])* | &q

探索 模块打包 exports和require 与 export和import 的用法和区别

菜单快捷导航: CommonJS 之 exports和require用法 ES6 Module 之 export 和 import 用法 CommonJS和ES6 Module的区别 循环依赖 和 解决办法 模块打包原理简析 1.CommonJS 之 exports和require用法 CommoneJS规定每个文件是一个模块.将一个JavaScript文件直接通过script标签引入页面中,和封装成CommonJS模块最大的不同在于:前者的顶层作用域是全局作用域,在进行变量及函数声明时会污染全

objective-c中#import和@class的区别

在Objective-C中,可以使用#import和@class来引用别的类型, 但是你知道两者有什么区别吗? @class叫做forward-class,  你经常会在头文件的定义中看到通过@class的引用, 原因就是当你只用@class来引入一个类时, 编译器知道有这么一个类,也就是说它能识别Engine *engine; 而在implementation文件中,如果你想要访问engine.price, 编译器就会出错, 即使你用了@class引入了. 这时需要使用的其实是#import

@import和link的区别

@import和link的区别 1.link语法结构    <link href="CSSurl路径" rel="stylesheet" type="text/css" />    此标签是引入CSS文件link标签,只要设置好路径即可. 2.@import语法结构    @import + 空格+ url(CSS文件路径地址);    1).在html中        <style type="text/css&qu

#import、#include、#import&lt;&gt;和#import””的区别

#import.#include.#import<>和#import””的区别 一.#import与#include #import不会引起交叉编译的问题.因为在Objective-C中会存在C/C++和Object-C混编的问题,如果用#include引入头文件,会导致交叉编译. 二.#import<>与#import"" 在实际运用中都是某个框架里的.#import <Three20/Three20.h><>通常指向的是一个目录#im

#import和#include的区别 关键字@class的作用

一.#import和#include的区别当我们在代码中使用两次#include的时候会报错:因为#include相当于拷贝头文件中的声明内容,所以会报重复定义的错误但是使用两次#import的话,不会报错,所以他可以解决重复导入的问题,他会做一次判断,如果已经导入一次就不导入了 二.关键字@class的作用在来看一下OC中的关键字@class的作用,在看他的作用之前,先来看一个问题:现在有一个课程类Classes和学生类Student,他们两之间需要相互引用(导入).直接看代码比较直接:Cla

#import与@class的区别

#import与@class的区别 1.import会包含这个类的所有信息,包括实体变量和方法,而@class只是告诉编译器,其后面声明的名称是类的名称,至于这些类是如何定义的,暂时不用考虑,后面会再告诉你. 2.在头文件中, 一般只需要知道被引用的类的名称就可以了. 不需要知道其内部的实体变量和方法,所以在头文件中一般使用@class来声明这个名称是类的名称. 而在实现类里面,因为会用到这个引用类的内部的实体变量和方法,所以需要使用#import来包含这个被引用类的头文件. 3.在编译效率方面

(转)关于ES6的 模块功能 Module 中export import的用法和注意之处

关于ES6的 模块功能 Module 中export import的用法和注意之处 export default 的用法 export default命令用于指定模块的默认输出.显然,一个模块只能有一个默认输出,因此export deault命令只能使用一次.所以,import命令后面才不用加大括号,相反其它的export 输出 可以有多个,且import时必须加大括号,示例如下: 1 // modules.js 2 function add(x, y) { 3 return x * y; 4