深入解析Python中的两种导入方法:from...import与import

news2024/11/18 21:29:12

 

 新书上架~👇全国包邮奥~

python实用小工具开发教程icon-default.png?t=N7T8http://pythontoolsteach.com/3

 欢迎关注我👆,收藏下次不迷路┗|`O′|┛ 嗷~~

目录

一、引言

二、from...import与import的基本区别

1. 导入方式的不同

2. 命名空间的差异

三、代码案例与演示

1. from...import案例

2. import案例

四、总结


一、引言

    在Python编程中,导入外部模块或包中的函数、类或变量是一个常见的操作。而from...importimport是两种常用的导入方法。本文将对这两种方法进行详细解析,并通过代码案例进行说明。

二、from...importimport的基本区别

1. 导入方式的不同

  • from...import:允许你从模块中导入指定的函数、类或变量,而不是整个模块。这通常会使你的代码更加简洁和清晰。

from math import sqrt  

# 现在可以直接使用sqrt函数,而不需要通过math模块来调用
  • import:则是导入整个模块,你需要通过模块名来访问其中的函数、类或变量。
import math  
# 使用sqrt函数时,需要通过math模块来调用  
result = math.sqrt(16)

2. 命名空间的差异

  • 使用from...import时,导入的函数、类或变量直接加入到当前的命名空间中,因此你不需要每次都指定模块名。但是,这也可能导致命名冲突,特别是当两个模块包含同名的函数或变量时。

  • 使用import时,所有的函数、类或变量都保留在原始的模块命名空间中,因此你不会遇到命名冲突的问题。但是,这也意味着你需要每次都指定模块名来访问其中的内容。

三、代码案例与演示

1. from...import案例

    假设我们有一个名为utils的模块,其中包含了一个名为greet的函数:

# utils.py  
def greet(name):  
    return f"Hello, {name}!"

    在主程序中,我们可以使用from...import来导入greet函数:

# main.py  
from utils import greet  
print(greet("World"))  # 输出: Hello, World!

2. import案例

    同样地,我们可以在主程序中使用import来导入整个utils模块:

# main.py  
import utils  
print(utils.greet("World"))  # 输出: Hello, World!

四、总结

    通过本文的解析和代码案例演示,我们可以看到from...importimport在Python编程中的基本区别和应用场景。在选择使用哪种导入方法时,你需要考虑代码的简洁性、可读性以及可能的命名冲突问题。在实际编程中,根据具体的需求和场景来选择合适的导入方法是非常重要的。

 非常感谢您花时间阅读我的博客,希望这些分享能为您带来启发和帮助。期待您的反馈与交流,让我们共同成长,再次感谢!

👇热门内容👇 

python使用案例与应用_安城安的博客-CSDN博客

软硬件教学_安城安的博客-CSDN博客

Orbslam3&Vinsfusion_安城安的博客-CSDN博客

网络安全_安城安的博客-CSDN博客

教程_安城安的博客-CSDN博客

python办公自动化_安城安的博客-CSDN博客

👇个人网站👇

安城安的云世界

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1716108.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

倍福TwinCAT3 PLC编程软件下载安装

1、哪里下载TwinCAT3 链接: Search result | 倍福 中国https://www.beckhoff.com.cn/zh-cn/support/download-finder/search-result/?download_group=97028248下载倍福PLC编程软件需要注册,大家可以提前注册,注册好后就可以开始愉快的下载了 安装前需要注意将各杀毒软件卸…

常用的优化器汇总及keras实现

1.SGD(Stochastic Gradient Descent) 2.RMSprop(Root Mean Square Propagation) 3.Adadelta 4.Adam(Adaptive Moment Estimation) 5.Nadam 6.代码实现 from sklearn.compose import make_column_transforme…

Linux下Git的基本使用

认识Git 先基于Windows下的git操作,熟悉了git的基本概念和使用,直接参考这几篇文章: Git概述、安装与本地仓库的基本操作-CSDN博客 Git本地仓库与远程仓库的交互-CSDN博客 GtiHub远程仓库之间的交互-CSDN博客 Git仓库的分支操作-CSDN博客 仓库…

python如何巧妙地利用内置函数与列表切片组织舞会派对

新书上架~👇全国包邮奥~ python实用小工具开发教程http://pythontoolsteach.com/3 欢迎关注我👆,收藏下次不迷路┗|`O′|┛ 嗷~~ 目录 一、引言 二、问题分析 三、解决方案 1. 利用内置函数创建参会人员名单 2. 利用列表切片…

每期一个小窍门 k8s版本的 Prometheus + grafana + alertmanager 三件套部署监控落地

首先部署prometheus 首先是pvc apiVersion: v1 kind: PersistentVolumeClaim metadata:name: prometheus-data-pvcnamespace: monitor spec:accessModes:- ReadWriteManystorageClassName: "data-nfs-storage"resources:requests:storage: 10Gi然后接着 cluster-ro…

【条形码code39】基础知识

条形码-39码(code39) 符号集。(共43个字符)包括 数字0 ~ 9,大写字母A~Z,空格,-,。,$,/,,% Extended Code39,支持全部ASCII字符。 完整的code39条形码:起始字符( * ) 数据数值 (可选的&#…

关于微信小程序低功耗蓝牙ECharts实时刷新(涉及自定义缓冲区)

简单的蓝牙显示(串口手动发数据测试) 最近搞了这方面的东西,是刚刚开始接触微信小程序,因为是刚刚开始接触蓝牙设备,所以这篇文章适合既不熟悉小程序,又不熟悉蓝牙的新手看。 项目要求是获取到蓝牙传输过来…

uni-app全局弹窗的实现方案

背景 为了解决uni-app 任意位置出现弹窗 解决方案 一、最初方案 受限于uni-app 调用组件需要每个页面都引入注册才可以使用,此方案繁琐,每个页面都要写侵入性比较强 二、改进方案 app端:新建一个页面进行跳转,可以实现伪弹窗…

探索数组处理:奇数的筛选与替换

新书上架~👇全国包邮奥~ python实用小工具开发教程http://pythontoolsteach.com/3 欢迎关注我👆,收藏下次不迷路┗|`O′|┛ 嗷~~ 目录 一、数组中的奇数筛选 二、将奇数替换为负一 总结 一、数组中的奇数筛选 在处理数组数据时…

在WHM中如何调整max_post_size参数大小

今日我们在搭建新网站时需要调整一下PHP参数max_post_size 的大小,我们公司使用的Hostease的美国独立服务器产品默认5个IP地址,也购买了cPanel面板,因此联系Hostease的技术支持,寻求帮助了解到如何在WHM中调整PHP参数,…

告别虚拟机,在Windows10启动Linux子系统

背景 如果要在自己的windows电脑安装一个Linux系统,一般是用虚拟机软件例如VMware软件来创建。但是这种方式显得非常的笨重。而Windows10自带的Linux子系统则非常的方便。 分析 在Windows10中启用子系统的方式来安装Linux,用于学习和开发是非常方便的。子系统的实用就和一个…

Android SDK下载安装(_指定版本)

安装完sdk,就可以直接使用adb命令了,如果想做app相关自动化测试,也是需要sdk环境依赖的 一、SDK下载 A:官网下载: 管内镜像网站(推荐):https://www.androiddevtools.cn/index.html 官网:htt…

分享10个我常逛的技术社区

多逛社区,了解新鲜的事情和技术,或许会有意想不到的观点给你灵感! 国外技术交流网站合集(30个类别)的github地址: https://github.com/sdmg15/Best-websites-a-programmer-should-visit 这里收集了超过200个程序员应该…

17 C语言学生管理系统

学生管理系统 &#x1f44d;&#x1f602;&#x1f4af; 项目代码 代码可能存在细节上的错误&#xff0c;希望大家可以指导意见。 #define _CRT_SECURE_NO_WARNINGS 1#include <stdio.h> #include <stdlib.h> #include <string.h>#define MAX_STUDENTS 100…

轻量级 C Logger

目录 一、描述 二、实现效果 三、使用案例 四、内存检测 一、描述 最近实现一个 WS 服务器&#xff0c;内部需要一个日志打印记录服务器程序的运行过程&#xff0c;故自己实现了一个轻量级的 logger&#xff0c;主要包含如下特征&#xff1a; 可输出 debug、info、warn、er…

C++ 进阶(3)虚函数表解析

个人主页&#xff1a;仍有未知等待探索-CSDN博客 专题分栏&#xff1a;C 请多多指教&#xff01; 目录 一、虚函数表 二、单继承&#xff08;无虚函数覆盖&#xff09; 继承关系表&#xff1a; 对于实例&#xff1a;derive d 的虚函数表&#xff1a; 对于实例&#xff1a;b…

现货白银交易点差是多少

现货白银投资者通过交易平台进行买卖操作的时候&#xff0c;平台会以“点差”的形式向投资者收取一定的交易费用。所谓的点差&#xff0c;也就是平台所报出的买入价和卖出价之间的固定差额&#xff0c;由于现货白银的报价是“成对”的&#xff0c;所以点差的存在也是其交易模式…

连锁收银系统支持带结算功能

连锁实体店的收银系统需要支持结算功能&#xff0c;以适应连锁运营效率和提升连锁管理的水平。商淘云连锁收银系统与您一起分享连锁收银系统需支持结算功能的三大必要点。大家点赞收藏&#xff0c;以免划走后找不到了。 一是&#xff0c;连锁模式的运营比较复杂&#xff0c;有加…

【小技巧】Keil C51 报错“*** ERROR L107: ADDRESS SPACE OVERFLOW****

软件&#xff1a;Keil C51 C51V961版本 电脑&#xff1a;Win10 报错提示&#xff1a; compiling System.c... linking... *** ERROR L107: ADDRESS SPACE OVERFLOW SPACE: DATA SEGMENT: ?DT?LCD LENGTH: 0034H Program Size: data174.0 xdata17 code1205 Target not create…

开源进销存系统

推荐一款开源的进销存系统 项目地址&#xff1a;进销存系统 仓库管理系统 SAAS进销存 进销存ERP: 进销存系统 仓库管理系统 SAAS进销存 进销存ERPhttps://gitee.com/flyemu/jxc.git 主要功能模块 销售 采购 库存 资料 设置 支持saas多租户&#xff0c;100%开源可二开 …