这篇文章给大家介绍Python 中import与from import有什么区别,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。
一、import语句
在开始使用一个模块中的函数之前,必须用import语句导入该模块。
语法:
import module1[, module2[,... moduleN]]
实例:
1、使用random模块ranint() 函数:
# printRandom.py import random for i in range(5): print(random.randint(1, 10)) # result:
说明:因randint()函数属于random模块,必须在函数名称之前先加上random,告诉Python在random模块中寻找这个函数。
2、导入多个模块:
import math, sys, random, os
二、from import语句
这是导入模块的另一种形式,使用这种形式的 import 语句, 调用 模块中的函数时不需要 moduleName. 前缀 。但是,使用完整的名称会让代码更可读,所以最好是使用普通形式的 import 语句 。
语法:
from moduleName import name1[, name2[, ... nameN]]|*
实例:
导入random模块下的所有函数:
from random import * for i in range(5): print(randint(1, 10)) # 这里就不需要random.前缀了
导入random模块下的randint, random函数:
from random import randint, random
下面看下python import 和from import 区别
上网查了一下,貌似是一个简单问题,网上都是这么说的,我之前也是这么理解的:
假设有一个包名字叫 numpy, 里面有一个函数 zeros
1、 from numpy import zeros
那么你可以直接调用 zeros()函数
2、import numpy.zeros
那么你只能使用全名 numpy.zeros
但今天遇到了问题了。
from sklearn import datasets a=datasets.load_digits() print(a)
这个代码没问题
但是下面这个代码居然提示错误
import sklearn a=sklearn.datasets.load_digits() print(a)
提示错误是:AttributeError: module 'sklearn' has no attribute 'datasets'
什么鬼,看不懂,不是说import sklearn 后应该可以通过点.来访问sklearn里的所有内容吗,就像numpy中那样。初学者,不懂,求大神解释下,不胜感激!!
这样也报错
import sklearn.datasets a=datasets.load_digits() print(a) NameError: name 'datasets' is not defined
关于Python 中import与from import有什么区别就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。