色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
电子发烧友
开通电子发烧友VIP会员 尊享10大特权
海量资料免费下载
精品直播免费看
优质内容免费畅学
课程9折专享价
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

淺析python模塊創(chuàng)建和from及import使用

jf_78858299 ? 來(lái)源:梯閱線條 ? 作者:小梯子 ? 2023-02-21 14:44 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

python模塊通過(guò)用python程序編寫(xiě)的.py文件即可創(chuàng)建,通過(guò)from及import語(yǔ)句導(dǎo)入模塊來(lái)使用。

1 python模塊創(chuàng)建

1.1 python模塊定義

python模塊是以.py為后綴的python程序文件。

1.2 python模塊命名

python模塊名稱(chēng)在導(dǎo)入模塊后變成變量名,所以模塊命名遵循變量命名規(guī)則。

python變量賦值時(shí),需用到變量名,變量命名需符合一定規(guī)則。

序號(hào) 規(guī)則 描述
1 書(shū)寫(xiě)規(guī)則:字母或下劃線+任意字母或下劃線或數(shù)字 以字母或下劃線開(kāi)頭,之后只能接字母、下劃線、數(shù)字
2 區(qū)分大小寫(xiě) 變量名S和s是兩個(gè)不同的變量
3 禁止用保留字做變量名 變量名不能和保留字相同

1.3 python擴(kuò)展模塊

使用外部語(yǔ)言(C、C++Java)創(chuàng)建的python模塊,稱(chēng)為擴(kuò)展模塊。

導(dǎo)入擴(kuò)展模塊同python文件模塊一樣,用import導(dǎo)入。

2 python模塊使用

python模塊首次導(dǎo)入,會(huì)執(zhí)行搜索、編譯(按需)、執(zhí)行三個(gè)步驟,然后保存在sys.modules字典中。

2.1 import導(dǎo)入模塊

用法

import module1 [as identifier1] (, module2 [as identifier2])

描述

python的import語(yǔ)句讀取整個(gè)模塊進(jìn)行導(dǎo)入,import是隱性賦值語(yǔ)句。

import module1:模塊名module1作用

作用 描述
1 根據(jù)module1搜索模塊
2 將模塊對(duì)象賦值給module1
3 通過(guò)“module1.屬性”的方式訪問(wèn)模塊屬性

as identifier1:

NO 描述
1 通過(guò)as給模塊取別名,之后通過(guò)別名訪問(wèn)模塊對(duì)象屬性。
2 用as后,不可通過(guò)“模塊原名”訪問(wèn)模塊屬性。
3 用as后,模塊搜索路徑存放的鍵為模塊原名,而非別名。

module1, module2:

導(dǎo)入多個(gè)模塊,通過(guò)逗號(hào)“,”分隔。

示例

# mod_1.py
def mod1print(val):
   print('在mod_1:{}'.format(val))
# mod_2.py
def mod2print(val):
   print('在mod_2:{}'.format(val))
# import 模塊名,通過(guò)“模塊名.屬性”訪問(wèn)屬性
>>> import os
>>> path=r'E:\\documents\\F盤(pán)'
>>> s='梯閱線條'
>>> os.chdir(path)
>>> import mod_1
>>> import mod_2
>>> mod_1.mod1print(s)
在mod_1:梯閱線條
>>> mod_2.mod2print(s)
在mod_2:梯閱線條
# 模塊導(dǎo)入后存在sys.modules字典中,鍵為模塊名,值為模塊路徑
>>> import sys
>>> sys.modules['mod_1']
'mod_1' from 'E:\\\\documents\\\\F盤(pán)\\\\mod_1.py'>
>>> sys.modules['mod_2']
'mod_2' from 'E:\\\\documents\\\\F盤(pán)\\\\mod_2.py'>
# 下面示例需重啟python idle后執(zhí)行
# 導(dǎo)入多個(gè)模塊用逗號(hào)“,”分隔,as模塊別名賦值模塊對(duì)象
>>> import os,sys
>>> path=r'E:\\documents\\F盤(pán)'
>>> s='梯閱線條'
>>> os.chdir(path)
>>> import mod_1 as md1,mod_2 as md2
>>> md1
'mod_1' from 'E:\\\\documents\\\\F盤(pán)\\\\mod_1.py'>
>>> md2
'mod_2' from 'E:\\\\documents\\\\F盤(pán)\\\\mod_2.py'>
# 通過(guò)“別名.屬性”訪問(wèn)模塊對(duì)象屬性
>>> md1.mod1print(s)
在mod_1:梯閱線條
>>> md2.mod2print(s)
在mod_2:梯閱線條
# 用as后,不可通過(guò)“模塊原名”訪問(wèn)模塊屬性
>>> mod_1.mod1print(s)
Traceback (most recent call last):
 File "", line 1, in 
   mod_1.mod1print(s)
NameError: name 'mod_1' is not defined
# 用as后,模塊搜索路徑存放的鍵為模塊原名,而非別名
>>> sys.modules['mod_1']
'mod_1' from 'E:\\\\documents\\\\F盤(pán)\\\\mod_1.py'>
>>> sys.modules['md1']
Traceback (most recent call last):
 File "", line 1, in 
   sys.modules['md1']
KeyError: 'md1'

2.2 from導(dǎo)入模塊

用法

from module import var1 ([as iden1](,var2 [as iden2]))

描述

python的from語(yǔ)句導(dǎo)入模塊指定變量名。使用時(shí)直接訪問(wèn)變量名,無(wú)需加模塊名。

var1:變量名。

as iden1:給變量取別名,之后使用別名訪問(wèn)。

var1,var2:導(dǎo)入多個(gè)變量,使用逗號(hào)“,”分隔。

示例

# mod_1.py
def mod1print(val):
   print('在mod1print:{}'.format(val))
   
def mod1echo(val):
   print('在mod1echo:{}'.format(val))
# from 模塊名 import 變量名
>>> import os,sys
>>> path=r'E:\\documents\\F盤(pán)'
>>> s='梯閱線條'
>>> os.chdir(path)
>>> from mod_1 import mod1print
# from 導(dǎo)入模塊存放在sys.modules字典
>>> sys.modules['mod_1']
'mod_1' from 'E:\\\\documents\\\\F盤(pán)\\\\mod_1.py'>
# 直接訪問(wèn)變量名,不需加模塊名
>>> mod1print(s)
在mod1print:梯閱線條
# 不可訪問(wèn)未導(dǎo)入的變量
>>> mod_1.mod1echo(s)
Traceback (most recent call last):
 File "", line 1, in 
   mod_1.mod1echo(s)
NameError: name 'mod_1' is not defined

# 下面示例重啟python idle后執(zhí)行
>>> import os
>>> path=r'E:\\documents\\F盤(pán)'
>>> s='梯閱線條'
>>> os.chdir(path)
# 導(dǎo)入多個(gè)變量,用逗號(hào)“,”分隔,as 變量別名賦值
>>> from mod_1 import mod1print as m1print,mod1echo as m1echo
# 通過(guò)變量別名訪問(wèn)模塊屬性
>>> m1print(s)
在mod1print:梯閱線條
>>> m1echo(s)
在mod1echo:梯閱線條
# 不可通過(guò)變量原名訪問(wèn)模塊屬性
>>> mod1echo(s)
Traceback (most recent call last):
 File "", line 1, in 
   mod1echo(s)
NameError: name 'mod1echo' is not defined

2.3 from *導(dǎo)入模塊

用法

from module import *

描述

import *:導(dǎo)入模塊的全部頂層(全局)變量,可以直接訪問(wèn)模塊屬性。

示例

# mod_1.py
def mod1print(val):
   print('在mod1print:{}'.format(val))
   
def mod1echo(val):
   print('在mod1echo:{}'.format(val))
   
def mod1show(val):
   print('在mod1show:{}'.format(val))
>>> import os
>>> path=r'E:\\documents\\F盤(pán)'
>>> s='梯閱線條'
>>> os.chdir(path)
>>> from mod_1 import *
# import * 導(dǎo)入全部頂層變量,直接訪問(wèn)模塊屬性,不需模塊名。
>>> mod1print(s)
在mod1print:梯閱線條
>>> mod1echo(s)
在mod1echo:梯閱線條
>>> mod1show(s)
在mod1show:梯閱線條
聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 編程語(yǔ)言
    +關(guān)注

    關(guān)注

    10

    文章

    1955

    瀏覽量

    36321
  • python
    +關(guān)注

    關(guān)注

    56

    文章

    4825

    瀏覽量

    86409
  • import
    +關(guān)注

    關(guān)注

    0

    文章

    15

    瀏覽量

    2063
收藏 0人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    python模塊安裝方法

    空間中,以上功能可寫(xiě)成:#!/usr/bin/python# -*- coding: UTF-8 -*-from hello import World如果要將模塊中的所有內(nèi)容全部導(dǎo)入當(dāng)
    發(fā)表于 04-04 14:57

    python教程之如何使用XlsxWriter模塊創(chuàng)建aexcel表格

    本文檔的主要內(nèi)容詳細(xì)介紹的是python教程之如何使用XlsxWriter模塊創(chuàng)建aexcel表格。
    發(fā)表于 01-18 17:01 ?10次下載
    <b class='flag-5'>python</b>教程之如何使用XlsxWriter<b class='flag-5'>模塊</b><b class='flag-5'>創(chuàng)建</b>aexcel表格

    python包、模塊和庫(kù)是什么

    有一個(gè)名為 demo.py 的文件,文件內(nèi)容如下 name="Python編程時(shí)光"print("導(dǎo)入成功") 直接使用 import 語(yǔ)句就可以導(dǎo)入,導(dǎo)入之后,就可以使用 模塊名.變量名 的方式訪問(wèn)
    的頭像 發(fā)表于 03-09 16:47 ?2501次閱讀

    python創(chuàng)建多線程的兩種方法

    1. 用函數(shù)創(chuàng)建多線程 在Python3中,Python提供了一個(gè)內(nèi)置模塊 threading.Thread ,可以很方便地讓我們創(chuàng)建多線程
    的頭像 發(fā)表于 03-15 16:47 ?5525次閱讀

    python模塊相對(duì)導(dǎo)入fromimport介紹1

    無(wú)包文件**init**.py下,python通過(guò)import module導(dǎo)入模塊時(shí),先搜索程序運(yùn)行主目錄。 程序運(yùn)行主目錄為運(yùn)行的py文件所在目錄,而不是執(zhí)行python.e
    的頭像 發(fā)表于 02-21 14:15 ?1209次閱讀

    python模塊相對(duì)導(dǎo)入fromimport介紹2

    python2.7先搜索當(dāng)前包目錄,再搜索sys.path模塊搜索路徑。即先相對(duì)再絕對(duì)。 本示例在交互模式執(zhí)行,非文件模式執(zhí)行。
    的頭像 發(fā)表于 02-21 14:17 ?880次閱讀

    簡(jiǎn)述python模塊importfrom及all

    python指定導(dǎo)入目錄路徑,稱(chēng)為包導(dǎo)入。 通過(guò)importfrom導(dǎo)入包模塊。 通過(guò)**all**指定導(dǎo)入的模塊和導(dǎo)入的
    的頭像 發(fā)表于 02-21 14:20 ?1468次閱讀

    import模塊的導(dǎo)入方法

    import 加載的模塊分為四種類(lèi)型: 使用python編寫(xiě)的代碼 .py 文件 已被編譯為共享庫(kù)或 DLL 的C或C++擴(kuò)展 一組模塊的包 使用C編寫(xiě)并鏈接到
    的頭像 發(fā)表于 09-11 17:31 ?1684次閱讀

    rom…import導(dǎo)入代碼介紹

    rom…import導(dǎo)入 基本語(yǔ)法格式如下: from 模塊import 成員1,成員2,… 如果希望導(dǎo)入一個(gè)模塊中的所有成員,則可以采
    的頭像 發(fā)表于 09-11 17:35 ?1206次閱讀

    如何實(shí)現(xiàn)__import__()動(dòng)態(tài)導(dǎo)入

    python2和python3中有差異,會(huì)導(dǎo)致意外錯(cuò)誤. 如果需要?jiǎng)討B(tài)導(dǎo)入可以使用 importlib 模塊 import importliba = importlib.
    的頭像 發(fā)表于 09-11 17:38 ?1431次閱讀

    Isort:自動(dòng)整理import的超實(shí)用工具教程

    ,但也支持格式化Python 2代碼。 在使用 isort 格式化你的 import 之前,你的代碼可能是長(zhǎng)這樣的: from my_lib import Object
    的頭像 發(fā)表于 10-21 10:38 ?995次閱讀
    Isort:自動(dòng)整理<b class='flag-5'>import</b>的超實(shí)用工具教程

    Isort:自動(dòng)整理 import 的超實(shí)用工具教程

    ,但也支持格式化Python 2代碼。 在使用 isort 格式化你的 import 之前,你的代碼可能是長(zhǎng)這樣的: from my_lib import Object
    的頭像 發(fā)表于 10-31 15:09 ?967次閱讀
    Isort:自動(dòng)整理 <b class='flag-5'>import</b> 的超實(shí)用工具教程

    Python import Hook 實(shí)現(xiàn)遠(yuǎn)程導(dǎo)入模塊

    所謂的模塊 導(dǎo)入,是指在一個(gè)模塊中使用另一個(gè)模塊的代碼的操作,它有利于代碼的復(fù)用。 也許你看到這個(gè)標(biāo)題,會(huì)說(shuō)我怎么會(huì)發(fā)這么基礎(chǔ)的文章? 與此相反。恰恰我覺(jué)得這篇文章的內(nèi)容可以算是 Python
    的頭像 發(fā)表于 11-02 11:45 ?947次閱讀
    <b class='flag-5'>Python</b> <b class='flag-5'>import</b> Hook 實(shí)現(xiàn)遠(yuǎn)程導(dǎo)入<b class='flag-5'>模塊</b>

    python如何import自己的模塊

    Python中,我們可以通過(guò)import語(yǔ)句來(lái)引入自己的模塊。導(dǎo)入自己的模塊可以提高代碼的可重用性,使代碼更加清晰和易于維護(hù)。在本文章中,我們將詳細(xì)介紹如何導(dǎo)入自己的
    的頭像 發(fā)表于 11-22 14:57 ?3733次閱讀

    如何使用Python編寫(xiě)腳本來(lái)自動(dòng)發(fā)送郵件

    發(fā)送電子郵件,我們需要使用smtplib和email模塊。smtplib模塊Python標(biāo)準(zhǔn)庫(kù)中的一部分,用于發(fā)送電子郵件。email模塊用于創(chuàng)建
    的頭像 發(fā)表于 12-07 11:36 ?1702次閱讀
    主站蜘蛛池模板: 国产乱妇乱子在线播视频播放网站 | 第一精品福利导福航 | 东北真实仑乱 | 歪歪漫画羞羞漫画国产 | 一个人日本的视频免费完整版 | 用快播看av的网站 | 51成人精品午夜福利AV免费七 | 国外成人电台 | 国产精品VIDEOSSEX久久发布 | 97免费视频在线观看 | 暖暖 视频 免费 高清 在线观看 | 一个人的视频在线观看免费观看 | 受被三个攻各种道具PLAY | 亚洲精品久久久一区 | 亚洲精品视频观看 | 亚洲国产在线精品国自产拍五月 | 爱如潮水3免费观看日本 | 入禽太深视频免费视频 | 亚洲AV无码国产精品色午夜情 | 伊人亚洲综合青草青草久热 | 国产人成高清在线视频99 | 日日啪无需播放器 | 十九岁韩国电影在线观看 | 国产在线成人一区二区三区 | 暖暖 免费 高清 日本在线 | 黄子佼81岁父亲现状曝光 | 欧美美女性生活 | 精品一区二区三区免费观看 | 中文国产乱码在线人妻一区二区 | 日韩欧美一区二区中文字幕 | 第一精品福利导福航 | 日本艳妓BBW高潮一19 | 99国产精品偷窥熟女精品视频 | 久久久影院亚洲精品 | 色戒在线完整观看在线播放版 | 好大的太粗好深BL | 动漫美女脱小内内露尿口 | 少妇高潮A片特黄久久精品网 | 亚洲最大成人 | 入禽太深免费高清在线观看5 | 亚洲精品成人无码A片在线 亚洲精品成人久久久影院 亚洲精品成人a在线观看 |

    電子發(fā)燒友

    中國(guó)電子工程師最喜歡的網(wǎng)站

    • 2931785位工程師會(huì)員交流學(xué)習(xí)
    • 獲取您個(gè)性化的科技前沿技術(shù)信息
    • 參加活動(dòng)獲取豐厚的禮品