import math在python种中的意思,Python中import使用-程序员宅基地

技术标签: import math在python种中的意思  

import的使用

举例:

#coding:utf-8

import math

r=5

print("半径是5的圆面积是:%.2f"%(math.pi*r**2))

import math的意思为从Python标准库中引入math.py模块,这是Python中定义的引入模块的方法。

import的标准语法如下:import module1[, module2[,… moduleN]]表示允许一个import导入多个模块,但各个模块间需要用逗号隔开。

当我们使用import语句时,Python解释器怎样找到对应的文件呢?这涉及Python的搜索路径,搜索路径由一系列目录名组成,Python解释器会依次从这些目录中寻找引入的模块。看起来很像环境变量,事实上可以通过定义环境变量的方式确定搜索路径。搜索路径是在Python编译或安装时确定的,被存储在sys模块的path变量中。查看搜索路径的方式如下:

import sys

print('python的搜索路径为:%s'% sys.path)

执行结果如下:

python的搜索路径为:['D:\\protect\\python\\python_interface', 'D:\\protect\\python', 'D:\\Python36\\python36.zip', 'D:\\Python36\\DLLs', 'D:\\Python36\\lib', 'D:\\Python36', 'C:\\Users\\Administrator\\AppData\\Roaming\\Python\\Python36\\site-packages', 'D:\\Python36\\lib\\site-packages', 'D:\\Python36\\lib\\site-packages\\win32', 'D:\\Python36\\lib\\site-packages\\win32\\lib', 'D:\\Python36\\lib\\site-packages\\Pythonwin']

由以上输出结果看到,sys.path输出了一个列表,第一项输出的是执行文件所在的目录,即我们执行Python解释器的目录(如果是脚本,就是运行脚本所在的目录)。

除了用import引入模块外,还有另一种方式引入模块,先看交互模式下输入的示例:

from math import pi

print(pi)

在Python中,from语句可以从模块中导入指定部分到当前命名空间中,语法如下:from modname import name1[, name2[, … nameN]]例如,from math import pi语句就是从math模块中导入pi到当前命名空间,该语句不会将math整个模块导入。比如在math模块中还有sin、exp函数,在这个语句里这两个函数都使用不了,而在导入整个math模块的语句中可以使用。

这样做的好处是什么呢?先看如下示例:

78867cad08ec

导入模块、模块中部分函数的区别

由上面的输出结果可知,如果在导入math模块时访问pi对象,需要使用math.pi,直接使用pi访问不了,会报错。使用import语句后,可以直接访问pi对象,不需要加上模块名进行访问。

可以从一个导入语句导入多个函数,多个函数之间用逗号分割。比如:

from math import pi,sin

如果要访问模块中多个对象,是否需要一个一个导入呢?当然不用,可以直接使用如下语句:

from math import *

这是一个简单地将项目中所有模块都导入的方法。在实际开发中,这种声明不建议过多使用,这样不利于编写清晰、简单的代码。只有想从给定模块导入所有功能时才使用这种方式。

除了上述几种方式外,还可以为模块取别名,例如:

78867cad08ec

模块取别名

既然可以为模块取别名,当然也可以为函数取别名,例如:

78867cad08ec

函数取名

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

智能推荐

Sliding Window Matrix Maximum_implement a sliding-window mean filter on an n*n m-程序员宅基地

文章浏览阅读135次。Given an array ofn * mmatrix, and a moving matrix window (sizek * k), move the window from top left to botton right at each iteration, find the maximum sum inside the window at each moving.Return..._implement a sliding-window mean filter on an n*n matrix with an m*m window

Java生成5个不重复的随机数_5位随机数java-程序员宅基地

文章浏览阅读3.3k次。Java生成5个不重复的随机数$package com.sjs.cs;//生成5个不重复的随机数import java.util.Random;public class SjsTest03 {public static void main(String[] args) {//定义生成随机数对象Random r = new Random(); //定义一个5个长度的int类型数组 int arr[] = new int[5]; //给以上数组每一个元素一个初始值,值为-1_5位随机数java

rebase退出(master|REBASE)模式_git 退出rebase-程序员宅基地

文章浏览阅读3.7k次。使用 git rebase --abort退出 REABASE模式_git 退出rebase

linux 内核源码树的建立_linux 源码 stage2.c-程序员宅基地

文章浏览阅读568次。linux 内核源码树的建立http://www.cnblogs.com/Jezze/archive/2011/12/23/2299871.html 刚看 O'REILLY 写的《LINUX 设备驱动程序》时。作者一再强调在编写驱动程序时必须 建立内核树。先前的内核只需要有一套内核头文件就够了,但因为2.6的内核模块吆喝内核源码树中的目标文件连接,通过这种方式,可得到一_linux 源码 stage2.c

Promise then方法的链式调用 读取文件_怎么用then读promise的数据-程序员宅基地

文章浏览阅读268次。引入fsconst fs = require('fs');用promise读取第一个文件用resolve返回文件内容,用then方法时,value是文件的内容。const p = new Promise(function(resolve, reject) { fs.readFile('第一个.md', (err, data) => { if (err) reject(err); resolve(data); })});链式调用then方法_怎么用then读promise的数据

vscode注释乱码的最简单解决方案_百度网盘下载的代码到vscode乱码-程序员宅基地

文章浏览阅读1k次。_百度网盘下载的代码到vscode乱码

随便推点

git忽略文件.ignore以及项目问题index.lock_git ignore将index-程序员宅基地

文章浏览阅读2.6k次。如果是git的老司机,那么这个问题就很菜了。就是我们日常在本地管理后,推到远程管理,那么有一些文件我们并不想推送到远程,怎么弄?开始天真的自己竟然认为像node_modules这样的文件,git推送的时候是自动忽略的。(当时的想法是,这些文件太大了,git知道不需要)。现在回过头来,才知道多么天真。其实,需要我们自己定义规则,去考虑git需要忽略那些文件,机器再智能也需要人去操作。1、.ignor..._git ignore将index

学习笔记17 --使用matlab自带函数,将旋转矩阵计算成欧拉角_matlab旋转矩阵转欧拉角-程序员宅基地

文章浏览阅读9k次,点赞6次,收藏33次。个人环境是使用matlab2017b该公式计算欧拉角有个要求,必须是3x3的旋转矩阵(尝试过4x4的计算不了)。matlab自带的由旋转矩阵计算欧拉角公式是,rotm2eul(),可以指定旋转顺序,否则默认旋转顺序为ZYX...._matlab旋转矩阵转欧拉角

SpringCloud第九章Hystrix断路器(服务监控hystrixDashboard)_除了隔离依赖服务的调用以外,hystrix还提供了准实时的调用监控(hystrix dashboar-程序员宅基地

文章浏览阅读169次。5、服务监控hystrixDashboard5.1、概述除了隔离依赖服务的调用以外,Hystrix还提供了准实时的调用监控(Hystrix Dashboard),Hystrix会持续地记录所有通过Hystrix发起的请求的执行信息,并以统计报表和图形的形式展示给用户,包括每秒执行多少请求多少成功,多少失败等。Netflix通过hystrix-metrics-event-stream项目实现了对以上指标的监控。Spring Cloud也提供了Hystrix Dashboard的整合,对监控内容转化成可视化_除了隔离依赖服务的调用以外,hystrix还提供了准实时的调用监控(hystrix dashboard

jfinal基本概述_jifinal-程序员宅基地

文章浏览阅读1.1k次。JFinal简介基于JFinal的web项目需要创建一个继承自JFinalConfig类的子类,该类对整个web项目进行配置。JFinalConfig子类需要事项六个抽象方法1.configConstant(…)此方法用来配置JFinal常量值如开发模式常量devMode配置,会输出本次请求的URL、Controller、Method以及请求所携带的参数2.configRoute(…..._jifinal

Arthas 命令解析(jvm/thread/stack/heapdump)_arthas分析dump-程序员宅基地

文章浏览阅读3.7k次。Arthas 命令解析(jvm/thread/stack/heapdump)[Arthas](https://arthas.aliyun.com/doc/index.html)是Alibaba开源的Java诊断工具,`Arthas`支持JDK 6+,支持Linux/Mac/Windows,采用命令行交互模式,同时提供丰富的`Tab`自动补全功能,进一步方便进行问题的定位和诊断。Arthas 3.0使用OGNL表达式求值库,详见[OGNL表达式官网_arthas分析dump

JavaBean、MVC模式、Servlet、Servlet生命周期:5个阶段_5.mvc中,javabean的生命周期包括()三个阶段-程序员宅基地

文章浏览阅读509次。JSP访问数据库_5.mvc中,javabean的生命周期包括()三个阶段

推荐文章

热门文章

相关标签