python中的import一个注意事项

 1 import math
 2
 3 def foo():
 4     import math
 5     x = math.pi
 6     # 如果math在下面import会出错,因为import是个写的过程(添加到sys.modules中),会把math作为
 7     # 局部空间变量,上面就找不到了
 8     #import math
 9     print math.sin(x)
10
11 foo()

上例中函数中的import应该在使用它的地方之前,因为这次import会把math作为局部变量访问

不推荐在文件头把所有的文件都import,因为会花费较多的时间,放在函数开头的地方即可。

时间: 2024-12-17 14:05:50

python中的import一个注意事项的相关文章

Python中的import和from import

一.Python路径介绍 在python用import或者from...import来导入相应的模块. 模块其实就是一些函数和类的集合文件,它能实现一些相应的功能,当我们需要使用这些功能的时候,直接把相应的模块导入到我们的程序中,我们就可以使用了. 这类似于C语言中的include头文件,Python中我们用import导入我们需要的模块. 二.搜索路径 Python会在以下路径中搜索它想要寻找的模块: 1. 程序所在的文件夹 2. 标准库的安装路径 3. 操作系统环境变量PYTHONPATH所

python中的import

python中的import操作有点类似于C语言中的#include,但又有很大的不同.在c语言中,#include是编译前将另一个文件包含进当前文件中.在python中导入并非只把一个文件文本插入另一个文件而已. 导入其实是运行时的运算,程序第一次导入时会执行三个步骤. 1 找到模块文件 2 在需要时编译成位码 3执行模块的代码来创建其所定义的对象 这三个步骤只有在模块第一次被导入的时候才会执行,之后导入相同模块的时候会跳过这三个步骤,而只提取内存中所加载的模块对象. python会把载入的模

你可以在 Python 中轻易创建一个后缀数组

我想告诉你一个关于后缀数组的故事.在一段时间里,我正在西雅图的一家公司面试,当时好奇的是如何最有效地创建一个用于可执行二进制文件的diff.我的研究给我带来了后缀数组和后缀树.后缀数组只是,将字符串的所有后缀排序,储存到有序列表中.后缀树是类似的,但是比列表更像BSTree.这些算法相当简单,一旦你进行了排序操作,它们就具有很快的性能.他们解决的问题是,找到两个字符串之间最长的公共子串(或者在这种情况下是字节列表). 你可以在 Python 中轻易创建一个后缀数组: >>> magic

Python中如何把一个UTC时间转换为本地时间

需求: 将20141126010101格式UTC时间转换为本地时间. 在网上搜了好长时间都没有找到完美的解决方案.有的引用了第三方库,这就需要在现网安装第三方的软件.这个是万万不可的.因为真实环境不一定允许你随便使用root用户安装Python模块.最终找到了一个不用外部模块的完美解决方案,放在这里分享给大家. 1 #!/usr/bin/python 2 3 import os,sys,datetime,time 4 from datetime import datetime 5 import

python中的import,reload,以及__import__

import作用:导入/引入一个python标准模块,其中包括.py文件.带有__init__.py文件的目录.e.g: [python] view plaincopy import module_name[,module1,...] from module import *|child[,child1,...] 说明:多次重复使用import语句时,不会重新加载被指定的模块,只是把对该模块的内存地址给引用到本地变量环境.测试: [python] view plaincopy a.py #!/u

浅谈python中得import xxx,from xxx import xxx, from xxx import *

在python中import跟from import都是用来导入的,但是导入的机制不同 1.import xxx:导入模块,或者文件夹,对于调用模块或者文件夹中子模块的变量或者函数,需要使用"模块".XX来调用 2.from xx import xx:导入的是函数或者变量,类,可以直接使用xx 3.from xx import *:导入xx中得全部"公开"变量,属性,公开指的是不是以"_"开头,除非模块或包中的"__all__"

python中如何判断一个变量的数据类型

mport types type(x) is types.IntType # 判断是否int 类型 type(x) is types.StringType #是否string类型 ......... -------------------------------------------------------- 超级恶心的模式,不用记住types.StringType import types type(x) == types(1) # 判断是否int 类型 type(x) == type('a

在Python中数据类型转换的注意事项

在学习Python的过程接触到了数据类型转化这一过程,在实践的过程中我发现了一个小问题,我们在平常的使用中要一定注意 在stri型转换成int型的过程中,str内的内容必须是整数不然会报错 如图: 在转换过程中如果str型内的内容为整数则正常 如图: 在str型号转换成float过程中则没有上述的问题 如图:

Python中怎样生成一个服从标准正态分布的矩阵??

例如要产生一个标准正态分布的矩阵,矩阵维数为2*3,则代码如下: 1 from numpy import *; 2 def rand_Matrix(): 3 randArr=random.randn(2,3); 4 randMat=mat(randArr); 5 return randMat; 一种结果如下: 1 matrix([[ 0.3150869 , -0.02041996, -0.15361071], 2 [-0.75507988, 0.80393683, -0.31790917]])