代码编织梦想

一、前言

Python中的模块,有过C语言编程经验的朋友都知道在C语言中如果要引用sqrt函数,必须用语句#include引入math.h这个头文件,否则是无法正常进行调用的。

那么在Python中,如果要引用一些其他的函数,该怎么处理呢?

在Python中有一个概念叫做模块(module),这个和C语言中的头文件以及Java中的包很类似,比如在Python中要调用sqrt函数,必须用import关键字引入math这个模块,下面就来了解一下Python中的模块。

说的通俗点 :模块就好比是工具包,要想使用这个工具包中的工具(就好比函数),就需要导入这个模块。

二、模块引入

1. import

在Python中用关键字import来引入某个模块,比如要引用模块math,就可以在文件最开始的地方用import math来引入。

形如 :

import module1,mudule2...

当解释器遇到import语句,如果模块在当前的搜索路径就会被导入。

在调用math模块中的函数时,必须这样引用:

     模块名.函数名

为什么必须加上模块名调用呢?

因为可能存在这样一种情况:在多个模块中含有相同名称的函数,此时如果只是通过函数名来调用,解释器无法知道到底要调用哪个函数。所以如果像上述这样引入模块的时候,调用函数必须加上模块名。

   import math


    #这样会报错
    print sqrt(2)


    #这样才能正确输出结果
    print math.sqrt(2)

有时候我们只需要用到模块中的某个函数,只需要引入该函数即可,此时可以用下面方法实现:

   from 模块名 import 函数名1,函数名2....

不仅可以引入函数,还可以引入一些全局变量、类等。

注意:

1.这种方式引入的时候,调用函数时只能给出函数名,不能给出模块名,但是当两个模块中含有相同名称函数的时候,后面一次引入会覆盖前一次引入。也就是说假如模块A中有函数function( ),在模块B中也有函数function( ),如果引入A中的function在先、B中的function在后,那么当调用function函数的时候,是去执行模块B中的function函数。

2. 如果想一次性引入math中所有的东西,还可以通过from math import 来实现

2. from…import

Python的from语句让你从模块中导入一个指定的部分到当前命名空间中。

语法如下:

   from modname import name1[, name2[, ... nameN]]

例如,要导入模块fib的fibonacci函数,使用如下语句:

   from fib import fibonacci

注意:

  • 不会把整个fib模块导入到当前的命名空间中,它只会将fib里的fibonacci单个引入。

3. from … import *

把一个模块的所有内容全都导入到当前的命名空间也是可行的,只需使用如下声明:

   from modname import *

注意:

  • 这提供了一个简单的方法来导入一个模块中的所有项目。然而这种声明不该被过多地使用。

4 . 定位模块

当你导入一个模块,Python解析器对模块位置的搜索顺序是:

1.当前目录

2.如果不在当前目录,Python则搜索在shell变量PYTHONPATH下的每个目录。

3.如果都找不到,Python会察看默认路径。UNIX下,默认路径一般为/usr/local/lib/python/

4.模块搜索路径存储在system模块的sys.path变量中。变量里包含当前目录,PYTHONPATH和由安装过程决定的默认目录。

三、as 的三种用法

1. with…as…

第一种是和with结合使用,主要用于文件的读写操作,省去了关闭文件的麻烦。

写法:

with open("文件路径","读写方式") as 赋值变量:
    #  执行代码块

实例:

#test.py
with open("1.txt") as f:
    print f.read()


#1.txt(两个文件在同一目录下)

运行结果:

在这里插入图片描述

2. 导入模块起别名

导入模块是对模块进行重命名,也就是给模块起一个别名。示例代码在下方的第三点有演示。

3. except结合使用

第一种:给traceback模块起别名为a

示例代码 :

import traceback as a
try:
    while 1/0 < 0:
        print True

第二种:和except组合使用,将捕获到的异常对象赋值给e。

实例代码 :

except Exception as e:
    print "e=",e
    a.print_exc()

四、总结

本文详细的讲解了Python基础 ( 模块 )的引入,调用 。介绍了常用的三种模块。模块时的需要注意的事项,以及在实际操作中会遇到的问题,提供了解决方案。希望可以帮助你更好的学习Python。

关于Python技术储备

学好 Python 不论是就业还是做副业赚钱都不错,但要学会 Python 还是要有一个学习规划。最后大家分享一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助!

一、Python所有方向的学习路线

Python所有方向路线就是把Python常用的技术点做整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。

二、学习软件

工欲善其事必先利其器。学习Python常用的开发软件都在这里了,给大家节省了很多时间。

三、入门学习视频

我们在看视频学习的时候,不能光动眼动脑不动手,比较科学的学习方法是在理解之后运用它们,这时候练手项目就很适合了。

四、实战案例

光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。

五、面试资料

我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。


这份完整版的Python全套学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/xx_nm98/article/details/129675323

python 调用自定义的模块函数_janee_chen的博客-爱代码爱编程_python调用自定义函数

有一些自己定义的基础模块函数,在很多任务中会重复使用,例如读取列表,保存结果等,每次复制相同的代码到一个.py文件中进行调用太过麻烦,把基础模块放在固定文件夹(或相对固定文件夹),使用sys.append(r'自定义的模块路径'),将自定义模块所在路径添加到搜索路径,当需要在不同的电脑(或服务器)使用时,会便利很多。 示例如下: 在E:\python_

python如何调用c语言的模块_†徐先森®的博客-爱代码爱编程

python如何调用c语言模块?只需要三步 ps【每个编译后的.so文件只能在编译的环境中使用,一定不要跨平台使用!】 第一步,你需要先有这个c语言模块的文件,注意:是C语言的文件,以 .c 结尾的! 【如果已经有了c模块,直接进行第二步操作,如果so库文件也有了,就进行第三步】 第二步,生成so库文件 使用命令: gcc -fPIC -s

python3调用cpp的方法——python调用so_springlustre的博客-爱代码爱编程_python3 调用so

python中使用ctypes模块可以在python中直接调用C/C++。 首先要将C/C++编译成动态库(.so),之后python中调用即可 特别注意在调用C++函数需要在函数声明时,加入前缀“ extern “C”

python 调用模块 模块内部调用其他模块的import问题:-爱代码爱编程

python 调用模块 模块内部调用其他模块的import问题: 参考链接 最近遇到一个python import的问题,经过是这样的: 我先实现好一个功能模块,这个功能模块有多级目录和很多 .py 文件,然后把该功能模块放到其他目录下作为子模块,运行代码时,就报错ModuleNotFoundError 模块导入原理 一个module(模块)就是一个

Python调用批处理文件-爱代码爱编程

写一个简单的.bat脚本例子(好怀恋的时光阿,大一写一下win的脚本文件,现在都研一了,帮一个老兄调调代码竟然还能接触) @echo off REM 声明采用UTF-8编码 chcp 65001 echo test echo 中文测试 echo 中文测试 REM 不用运行这是注释 pause 运行一下... 好了,准备好一个.bat文件,接下来

Python的自定义模块和调用方法-爱代码爱编程

目录 1.创建模块及__init__.py初始化文件 为什么要添加__init__.py文件? 2.__version__参数 2.导入库  1.from xxx import xxx Name.py文件写入内容 2.import xxx __init__.py文件参数  用Index.py文件导入 3.as别名  众所周知Pytho

Python 调用另一个模块里的全局变量-爱代码爱编程

在项目中遇到了一个这样的小问题:在主程序里定义了一个全局变量,编写了一堆函数放到了另外几个.py文件里,然后想在放函数的.py文件里调用全局变量,发现调用不了。 我自己的项目里是一个UI界面的问题,对Ui_MainWindow的类定义了一个printf的方法,在主函数里创建了一个实例,然后想在另一个模块里用这个实例打印一些东西 查了一些博客,这里记录一

python调用dubbo接口(可用于接口,自动化,性能测是组成部分)_江云的博客的博客-爱代码爱编程

 简介:平时测试的时候,并不是所有的接口都是页面端的,不是页面端的也就不是http请求了,很多时候使用的是duboo请求,做接口测试的时候,或者做自动化和性能测试的时候,我们是需要使用dubbo接口了,在企业中我做了很好的封装,但是因为保密的原因企业上的东西不能上传的网上,所以只能上次个简陋版的,虽说是简陋版的,但是也足够应付大部分的场合了。  拓展:接

python调用js的四种方法_嘻嘻哈哈的大傻子的博客-爱代码爱编程

Python调用JS的四种方法 1、PyExecJS 方法1)、安装PyExecJS2)、 `PyExecJS 示例` 2、PyV8 方法1)、安装PyV82)、 `PyV8 示例` 3、

从0开始学python -64-爱代码爱编程

Python urllib -1 Python urllib 库用于操作网页 URL,并对网页的内容进行抓取处理。 本文主要介绍 Python3 的 urllib。 urllib 包 包含以下几个模块: urllib