python import xxx 与 from xxx import xx 模块引入的区别

有如下脚本script1.py:

A=‘aaaa‘
B=‘bbbb‘
C=‘cccc‘
print A,B,C

1.命令行交互模式下使用import 导入方式1:

>>>import script1

再分别输入命令打印:

>>>print script1.A, script1.B, script1.C

>>>print A,B,C

结果如下:

可以看到

print script1.A, script1.B, script1.C正常取到A,B,C的值

但是print A,B,C却报错了,A未声明

2.使用from ... import ...的方式导入:

>>>from script1 import A,B,C

分别输入命令打印:

>>>print script1.A, script1.B, script1.C

>>>print A,B,C

其运行结果如下:

可以看到,print A,B,C正确取到值,但是script1.A 报错,script1未声明

综上可以看出 两种方式引入的区别,这两种方式导入的变量存储是这样的:

时间: 2024-10-02 20:47:51

python import xxx 与 from xxx import xx 模块引入的区别的相关文章

升级CUDA版本导致VS2010错误:未找到导入的项目XXX,请确认<Import>声明中的路径正确,且磁盘上存在该文件。。。。

VS2010错误:未找到导入的项目XXX,请确认<Import>声明中的路径正确,且磁盘上存在该文件. E:\IGSNRR\dev\PhDThesisCode_CUDA\gtcg\gtcg.vcxproj : error : 未找到导入的项目“C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\BuildCustomizations\CUDA 5.5.props”.请确认 <Import> 声明中的路径正确,且磁盘上存在该文件. E:

VS发布网站时,报错提示:“未能将文件xxx复制到xxx,未能找到文件xx”三种解决方案!

发布网站时候大家可能会遇到这样的情况,就是报错提示说:"未能将文件xxx复制到xxx,未能找到文件xx",这个问题一般来说有三种解决方案,个人倾向第三种,如图: 解决方案如下: 方案一.把系统提示缺失的文件重新放入相对应的文件夹中,然后再发布.但是如果时间久了文件自己都找不到的话这个方案不推荐: 方案二.删除".csproj"项目文件中的 < Content Include>相对应参数行,用"ctrl+f"找到后一个一个删除即可.如果

Python语言中循环引用(import)失败的解决方案

最近在开发智能家居项目hestia-rpi项目中,由于代码结构层级划分不合理,导致了循环引用(import)module失败的问题,错误如下: 1 2 3 4 5 6 7 8 9 10 Traceback (most recent call last):   File "./main.py", line 8, in &amp;lt;module&amp;gt;     from hestiarpi.library.server import server   File

Python项目中如何优雅的import

Python项目中如何优雅的import 前言 之前有一篇关于Python编码规范的随笔, 但是写的比较杂乱, 因为提到了import语句, 在篇文章中, 我专门来讲Python项目中如何更好的import 标准库与第三方库的导入 导入一个模块, 如果模块名太长, 则使用import as; 如果是导入子模块, 则使用from import as 如果需要导入类的, 则使用from import导入类, 如果要导入某一个模块的多各类的话, 则类名使用逗号分隔 示例 导入sklearn中的svm中

笨方法学python之import sys与from sys import argv的区别

这是在网上看到的一个大神的解答: sys is a module that contains "system functionality". sys.argv is a list containing your script's command line arguments. One way to use it would be to write import sys and then sys.argv to access it. from module import names is

[Android L]SEAndroid开放设备文件结点权限(读或写)方法(涵盖常用操作:sys/xxx、proc/xxx、SystemProperties)

温馨提示 建议你先了解一下上一篇博文([Android L]SEAndroid增强Androd安全性背景概要及带来的影响)所讲的内容,先对SEAndroid窥个全貌,然后再继续本节内容. 1 现象描述 基于Android L版本源码环境进行开发时,根据项目需求,APP层需要操作sys/xxx 或 proc/xxx下面的文件结点,但是会报出以下权限异常,无法直接操作这些结点 LedLightFileUtil( 4671): java.io.FileNotFoundException: /sys/c

import org.marker.weixin.DefaultSession; import org.marker.weixin.HandleMessageAdapter; import org.marker.weixin.MySecurity; import org.marker.weixin.msg.*;

需要以下微信包可以添加我的微信公众号 回复“微信api”即可得到jar链接,以及maven添加本地jar方法,以及更改后的源代码 import org.marker.weixin.DefaultSession;import org.marker.weixin.HandleMessageAdapter;import org.marker.weixin.MySecurity;import org.marker.weixin.msg.*;

sql数据库删除表的外键约束(INSERT 语句与 FOREIGN KEY 约束&quot;XXX&quot;冲突。该冲突发生于数据库&quot;XXX&quot;,表&quot;XXX&quot;, column &#39;XXX)

使用如下SQL语句查询出表中外键约束名称: 1 select name 2 from sys.foreign_key_columns f join sys.objects o on f.constraint_object_id=o.object_id 3 where f.parent_object_id=object_id('表名') 执行如下SQL语句删除即可. 1 alter table 表名 drop constraint 外键约束名 sql数据库删除表的外键约束(INSERT 语句与 F

立即执行函数(function (){xxx})()和(function (){xxx}())

( function(){-} )()和( function (){-} () )是两种javascript立即执行函数的常见写法,最初我以为是一个括号包裹匿名函数,再在后面加个括号调用函数,最后达到函数定义后立即执行的目的,后来发现加括号的原因并非如此.要理解立即执行函数,需要先理解一些函数的基本概念. 函数声明.函数表达式.匿名函数 函数声明: function fnName () {-};使用function关键字声明一个函数,再指定一个函数名,叫函数声明. 函数表达式: var fnNa