欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python面向?qū)ο笾K詳解

 更新時(shí)間:2021年12月31日 11:58:27   作者:劉長(zhǎng)棟  
這篇文章主要為大家介紹了Python面向?qū)ο笾K,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來(lái)幫助

1.1 導(dǎo)入模塊

  • import 模塊名
  • form 模塊名import 功能名
  • form 模塊名 import *
  • import 模塊名 as 別名
  • import 模塊名 import 功能名 as 別名

以下用math模塊下的 sqrt 驗(yàn)證

1.1.1 import 模塊名

語(yǔ)法

 # 1 導(dǎo)入模塊
 import 模塊名  # 推薦使用此種格式
 import 模塊名1,模塊名2.... # 不推擠
   # 2 調(diào)用
 模塊名.功能名()

體驗(yàn)

	import math
	print(math.sqrt(9))

1.1.2 from 模塊名 import 功能名

語(yǔ)法

# 1 導(dǎo)入
from 模塊名 import 功能1,功能2....
# 2 調(diào)用
功能()

體驗(yàn)

	from sqrt import math
	print(sqrt(9))

1.1.3 from …import*

語(yǔ)法

from 模塊名 import*

體驗(yàn)

	from math import*
	print(sqrt(9))

1.1.4 as 定義別名

把復(fù)雜的長(zhǎng)的 不好記的模塊名\功能名, as成簡(jiǎn)單的

語(yǔ)法

# 模塊定義別名
import 模塊名 as 別名
# 功能定義別名
from 模塊名 import 功能 as 別名

體驗(yàn)

import math as  m
print(m.srqt(9))
from math import srqt as s
print(s(9))

代碼

# --*coding:utf-8*--
# 需求 驗(yàn)證math模塊下的 sqrt()開平方計(jì)算
"""
步驟
1 導(dǎo)入math模塊
2  驗(yàn)證sqrt功能 : 調(diào)用該模塊下的sqrt功能
"""
# 方法一 : import 模塊名;模塊名.功能
import math
print(math.sqrt(9))
# 方法二 :from 模塊名 import 功能,功能...;功能調(diào)用(功能())
from math import sqrt
print(sqrt(6))
# 方法三 :from 模塊名 import*  ;調(diào)用功能
from math import *
print(sqrt(16))
# 方法四-模塊別名: import 模塊名 as 別名;調(diào)用功能  別名.功能
import math as mm
print(mm.sqrt(16))
# 方法四-功能別名: from math import sqrt as ss
from math import sqrt as ss
print(ss(9))

1.2 制作模塊

在Python中,每個(gè)Python文件都可以作為一個(gè)模塊,模塊的名字就是文件名

自定義模塊名必須符合標(biāo)識(shí)符命名規(guī)則

目標(biāo)

  • 作用
  • 制作步驟和書寫代碼
  • 掌握注意事項(xiàng)

為啥要制作模塊:

程序員在開發(fā)中,對(duì)于一些頻繁使用的代碼,進(jìn)行封裝 ,制作成一個(gè)滿足需要的模塊,在之后的工資中再去調(diào)用

1.2.1 定義模塊

新建一個(gè)Python文件,命名my_module1.py,并定義testA函數(shù)

	# 此處 : 此模塊相關(guān)的解釋性文字,如 一個(gè)函數(shù) 完成任意兩個(gè)數(shù)字相加
	def testA(a,b):
		print(a+b)

1.2.2 測(cè)試模塊

寫完一個(gè)模塊, 測(cè)試?yán)锩媸欠裼衎ug

在實(shí)際的開發(fā)中, 當(dāng)一個(gè)開發(fā)人員編寫完一個(gè)模塊后, 為了讓模塊能夠在項(xiàng)目中達(dá)到想要的效果, 這個(gè)開發(fā)人員會(huì)自行在py文件中加入一些測(cè)試信息,例如在 my_module1.py中添加測(cè)試代碼.

def testA(a,b):
	print(a+b)
testA(5,6)			

此時(shí),無(wú)論當(dāng)前文件,還是其他導(dǎo)入了該模塊的文件, 在運(yùn)行時(shí),都會(huì)執(zhí)行testA函數(shù)的調(diào)用. 特別是 其他函數(shù)調(diào)用是 會(huì)一并調(diào)用了 測(cè)試函數(shù),這是我們不希望看到的.

解決辦法如下:

引入 name 系統(tǒng)變量, 上面的代碼變成

# --*coding:utf-8*--
# 需求 :一個(gè)函數(shù)  完成任意兩個(gè)數(shù)字相加
def testA(a,b):
    print(a+b)
# 測(cè)試信息
# text(5,6)  # 驗(yàn)證1  這樣會(huì)在其他函數(shù)調(diào)用時(shí),被執(zhí)行
"""
 驗(yàn)證2  print(__name__) 
 測(cè)試 在當(dāng)前函數(shù)下,和被其他文件調(diào)用時(shí),返回結(jié)果:
 內(nèi)部  返回  __main__  
 外部  返回 本函數(shù)名 
"""
# 根據(jù) __name__ 特性,做if 判斷
if __name__ == "__main__":
    testA(2,5)
"""=====輸出==自身調(diào)用的時(shí)候 執(zhí)行測(cè)試語(yǔ)句=="""    
7 

1.2.3 外部調(diào)用

# --*coding:utf-8*--
# 導(dǎo)包
import my_module1
# 調(diào)用 模塊名.功能
my_module1.testA(6,12)
"""==輸出==外部調(diào)用是 不執(zhí)行測(cè)試代碼=="""
18

1.3 模塊定位順序

當(dāng)導(dǎo)入一個(gè)模塊,Python解析器對(duì)模塊位置的搜索順序是 由近及遠(yuǎn)

  • 當(dāng)前模塊
  • 當(dāng)前沒有, 則搜索在shell變量PYTHONPATH下的每個(gè)目錄
  • 還沒有,Python會(huì)查看默認(rèn)路徑(不同的系統(tǒng)不一樣),如 unix下,默認(rèn)路徑為 /usr/local/lib/Python

** PYTHONPATH 安裝程序是的默認(rèn)目錄

注意

  • 自己的文件名 不要和已有的模塊名重復(fù), 否則會(huì)導(dǎo)致模塊功能無(wú)法使用
  • 使用from 模塊名 import 功能 的時(shí)候, 如果功能名字重復(fù), 誰(shuí)后面 ,誰(shuí)起作用.

1.4 all

目標(biāo)

  • 什么是__all__列表
  • 作用
  • 寫代碼 分析作用 體驗(yàn)

什么是all列表 就是模塊中的一個(gè)變量,取值是一個(gè)列表[]的形式

作用:當(dāng)模塊中有__all__時(shí),如果使用from 模塊名 import * 導(dǎo)入時(shí),只能導(dǎo)入這個(gè)all后面列表的元素

my_module1模塊代碼

___all__=["testA]
def testA():
	print("我是testA")
def testB():
	print("我是testB")

執(zhí)行結(jié)果是 :

我是testA

如果沒有__all__=[] 變量

執(zhí)行結(jié)果將是: all 所有的

我是testA
我是testB

總結(jié)

本篇文章就到這里了,希望能夠給你帶來(lái)幫助,也希望您能夠多多關(guān)注腳本之家的更多內(nèi)容!

相關(guān)文章

  • python圖片合成的示例

    python圖片合成的示例

    這篇文章主要介紹了python圖片合成的示例,幫助大家更好的理解和使用python,感興趣的朋友可以了解下
    2020-11-11
  • python數(shù)據(jù)抓取分析的示例代碼(python + mongodb)

    python數(shù)據(jù)抓取分析的示例代碼(python + mongodb)

    本篇文章主要介紹了python數(shù)據(jù)抓取分析的示例代碼(python + mongodb),小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來(lái)看看吧
    2017-12-12
  • Python線程的兩種編程方式

    Python線程的兩種編程方式

    這篇文章主要介紹了Python線程的兩種編程方式,Python中如果要使用線程的話,一種是函數(shù)式,一種是用類來(lái)包裝的線程對(duì)象,需要的朋友可以參考下
    2015-04-04
  • Python線程池的實(shí)現(xiàn)淺析

    Python線程池的實(shí)現(xiàn)淺析

    當(dāng)有多個(gè)?IO?密集型的任務(wù)要被處理時(shí),我們自然而然會(huì)想到多線程。而線程池的實(shí)現(xiàn)也很簡(jiǎn)單,因?yàn)?Python?提供了一個(gè)標(biāo)準(zhǔn)庫(kù)?concurrent.futures,已經(jīng)內(nèi)置了對(duì)線程池的支持。所以本篇文章,我們就來(lái)詳細(xì)介紹一下該模塊的用法
    2022-08-08
  • pytorch torch.nn.AdaptiveAvgPool2d()自適應(yīng)平均池化函數(shù)詳解

    pytorch torch.nn.AdaptiveAvgPool2d()自適應(yīng)平均池化函數(shù)詳解

    今天小編就為大家分享一篇pytorch torch.nn.AdaptiveAvgPool2d()自適應(yīng)平均池化函數(shù)詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來(lái)看看吧
    2020-01-01
  • 如何基于Python爬取隱秘的角落評(píng)論

    如何基于Python爬取隱秘的角落評(píng)論

    這篇文章主要介紹了如何基于Python爬取隱秘的角落評(píng)論,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-07-07
  • pyinstaller打包后偶爾出現(xiàn)黑窗口一閃而過的問題及解決

    pyinstaller打包后偶爾出現(xiàn)黑窗口一閃而過的問題及解決

    這篇文章主要介紹了pyinstaller打包后偶爾出現(xiàn)黑窗口一閃而過的問題及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-01-01
  • python基于tkinter制作m3u8視頻下載工具

    python基于tkinter制作m3u8視頻下載工具

    這篇文章主要介紹了python如何基于tkinter制作m3u8視頻下載工具,幫助大家更好的理解和學(xué)習(xí)使用python,感興趣的朋友可以了解下
    2021-04-04
  • 詳解Python中的枚舉類型

    詳解Python中的枚舉類型

    枚舉(Enum)是一種數(shù)據(jù)類型,是綁定到唯一值的符號(hào)表示。。本文就來(lái)和大家聊聊Python中的枚舉類型,為什么需要枚舉類型,及如何使用
    2022-08-08
  • 詳解利用python-highcharts庫(kù)繪制交互式可視化圖表

    詳解利用python-highcharts庫(kù)繪制交互式可視化圖表

    本文主要和大家分享一個(gè)超強(qiáng)交互式可視化繪制工具-python-highcharts。python-highcharts就是使用Python進(jìn)行Highcharts項(xiàng)目繪制,簡(jiǎn)單的說(shuō)就是實(shí)現(xiàn)Python和Javascript之間的簡(jiǎn)單轉(zhuǎn)換層,感興趣的可以了解一下
    2022-03-03

最新評(píng)論