中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當(dāng)前位置: 首頁 > news >正文

網(wǎng)頁設(shè)計 效果圖亞馬遜seo推廣

網(wǎng)頁設(shè)計 效果圖,亞馬遜seo推廣,ui設(shè)計作品解析,慈溪怎么做網(wǎng)站一、 if __name__ __main__ if __name__ __main__的意思是: 當(dāng).py文件被直接運行時,if __name__ __main__之下的代碼塊將被運行; 當(dāng).py文件以模塊形式被導(dǎo)入時,if __name__ __main__之下的代碼塊不被運行。 1.1、一個 xxx.p…

一、? if __name__ == '__main__'

if __name__ == '__main__'的意思是:

當(dāng).py文件被直接運行時,if __name__ == '__main__'之下的代碼塊將被運行;

當(dāng).py文件以模塊形式被導(dǎo)入時,if __name__ == '__main__'之下的代碼塊不被運行。

1.1、一個? xxx.py 文件被其他 xxx.py 文件引用

創(chuàng)建一個const.py文件:

PI = 3.14def main():print("PI:", PI)
main()
# 運行結(jié)果:PI: 3.14

寫一個用于計算圓面積的area.py文件,area.py文件需要用到const.py文件中的PI變量。從const.py中,我們把PI變量導(dǎo)入area.py:

from const import PIdef calc_round_area(radius):return PI * (radius ** 2)def main():print("round area: ", calc_round_area(2))main()'''
運行結(jié)果:
PI: 3.14
round area:  12.56
'''

1.2 修改const.py,添加if __name__ == '__main__'

? ? ? 我們看到const.py中的main函數(shù)也被運行了,實際上我們不希望它被運行,因為const.py提供的main函數(shù)只是為了測試常量定義。這時if __name__ ==? '__main__'派上了用場,我們把const.py改一下,添加if __name__ == '__main__'

PI = 3.14def main():print("PI:", PI)if __name__ == "__main__":main()運行結(jié)果
PI: 3.14

導(dǎo)入const.py,運行area.py:

輸出結(jié)果:
round area:  12.56#不顯示:PI: 3.14

二、__init__與self

2.1?Python中self的含義

? ? ? self,英文單詞意思很明顯,表示自己,本身。python的self,是個對象(Object),是當(dāng)前類的實例

2.2 Python中為何要有self

? ? ?在定義一個類時,首先需要定義一個構(gòu)造函數(shù)。構(gòu)造函數(shù)是用來初始化對象的屬性的。在Python中,構(gòu)造函數(shù)的第一個參數(shù)通常是self。self代表當(dāng)前的對象實例,可以用來引用該對象的屬性和方法。

? ? ?在Python中,如果要使用一個對象的屬性或方法,首先需要實例化對象。實例化對象是指創(chuàng)建一個對象的實例,也就是根據(jù)類創(chuàng)建一個具體的對象。在實例化對象時,通常需要傳入一些參數(shù)來初始化對象的屬性。

Python中就規(guī)定好了,函數(shù)的第一個參數(shù),就必須是實例對象本身,并且建議,約定俗成,把其名字寫為self

2.3_init__方法的作用:

? ? ? __init__ 方法是 Python 中面向?qū)ο缶幊讨蓄惖奶厥夥椒?#xff0c;也稱為構(gòu)造方法,當(dāng)創(chuàng)建一個類的實例時,__init__ 方法會自動調(diào)用。

? ? ? ?它的主要作用是初始化實例的屬性,實例變量是對象的屬性,用于存儲數(shù)據(jù)。在實例被創(chuàng)建后,你可以通過這些屬性對實例進行操作。每個類可以定義多個不同的 __init__ 方法,但通常情況下,在類中只有一個,在這種情況下,在創(chuàng)建類的實例時,必須提供所需的參數(shù)。

def __init__(self, 參數(shù)1, 參數(shù)2, ...):初始化語句1初始化語句2...

實例:在類中使用 init 方法初始化類的屬性

class Dog:def __init__(self, breed, name, age):self.breed = breedself.name = nameself.age = agedog = Dog("Labrador", "Max", 3)print(dog.breed) # Output: Labrador
print(dog.name) # Output: Max
print(dog.age) # Output: 3

在這個例子中,我們創(chuàng)建了一個名為 Dog 的類,并且定義了 init 方法。 init 方法接收三個參數(shù):breed, name 和 age,并且通過 self. 前綴來設(shè)置類的屬性。最后,我們創(chuàng)建了一個名為 dog 的對象,并且初始化了它的 breed, name 和 age 屬性。

2.4__init__()和self對象

class Person(object):def __init__(self, name, lang, website):self.name = nameself.lang = langself.website = websiteprint('self: ', self)print('type of self: ', type(self))
'''
未實例化時,運行程序,構(gòu)造方法沒有運行
'''p = Person('Tim', 'English', 'www.universal.com')   '''實例化后運行的結(jié)果
self:  <__main__.Person object at 0x00000000021EAF98>
type of self:  <class '__main__.Person'>
'''

可以看出self為實例變量p,是一個Person類型的對象

class Dog(object):       def __init__(self,name,dog_type):self.name = nameself.type = dog_typedef sayhi(self):print("hello,I am a dog, my name is ",self.name)d = Dog('LiChuang',"京巴")            # 實例化
d.sayhi()

以下是d = Dog('LiChuang',"京巴")實例化的示意圖:

?2.5 如果沒有在__init__中初始化對應(yīng)的實例變量的話,導(dǎo)致后續(xù)引用實例變量會出錯

? ? ? 如下代碼,完整的演示了,如果沒有在類Class的最初的__init__函數(shù)中,正確的初始化實例變量,則會導(dǎo)致后續(xù)沒有變量可用,因而出現(xiàn)AttributeError的錯誤:

name = 'whole global name'
'''
注:此處全局的變量名,寫成name,只是為了演示而用
實際上,好的編程風(fēng)格,應(yīng)該寫成gName之類的名字,
以表示該變量是Global的變量
'''class Person(object):def __init__(self, newPersonName):# self.name = newPersonName'''如果此處不寫成self.name那么此處的name,只是__init__函數(shù)中的局部臨時變量name而已和全局中的name,沒有半毛錢關(guān)系'''name = newPersonName'''此處只是為了代碼演示,而使用了局部變量name,不過需要注意的是,此處很明顯,由于接下來的代碼也沒有利用到此處的局部變量name則就導(dǎo)致了,此處的name變量,實際上被浪費了,根本沒有利用到'''def sayYourName(self):'''此處由于找不到實例中的name變量,所以會報錯:AttributeError: Person instance has no attribute 'name''''print('My name is %s' %self.name)def selfAndInitDemo():personInstance = Person('Tim')personInstance.sayYourName()if __name__ == '__main__':selfAndInitDemo()'''  未使用self.name時拋異常
Traceback (most recent call last):File "E:/python14_workspace/s14/day06/test_1.py", line 18, in <module>selfAndInitDemo()File "E:/python14_workspace/s14/day06/test_1.py", line 15, in selfAndInitDemopersonInstance.sayYourName()File "E:/python14_workspace/s14/day06/test_1.py", line 11, in sayYourNameprint('My name is %s' %self.name)
AttributeError: 'Person' object has no attribute 'name'
'''

從上述代碼可見,由于在類的初始化(實例化)的__init__函數(shù)中,沒有給self.name設(shè)置值,使得實例中,根本沒有name這個變量,導(dǎo)致后續(xù)再去訪問self.name,就會出現(xiàn)AttributeError的錯誤了。

對應(yīng)的,如果寫成self.name,則意思就正確了,就是初始化的時候,給實例中新增加,并且正常設(shè)置了正確的值newPersionName了,所以后續(xù)再去通過self.name,就可以訪問到,當(dāng)前實例中正確的變量name了。

相應(yīng)的正確寫法的代碼如下:

name = 'whole global name'
'''
注:此處全局的變量名,寫成name,只是為了演示而用
實際上,好的編程風(fēng)格,應(yīng)該寫成gName之類的名字,
以表示該變量是Global的變量
'''class Person(object):def __init__(self, newPersonName):self.name = newPersonName'''此處正確的,通過訪問self.name的形式,實現(xiàn)了:1.給實例中,增加了name變量2.并且給name賦了初值,為newPersionName'''def sayYourName(self):'''此處由于開始正確的初始化了self對象,使得其中有了name變量,所以此處可以正確訪問了name值了'''print('My name is %s' %self.name)def selfAndInitDemo():personInstance = Person('Tim')personInstance.sayYourName()if __name__ == '__main__':selfAndInitDemo()'''My name is Tim'''
http://m.risenshineclean.com/news/32024.html

相關(guān)文章:

  • c語言做網(wǎng)站后臺服務(wù)百度關(guān)鍵詞排名銷售
  • 學(xué)習(xí)網(wǎng)站開發(fā)寧德市房價
  • 域名備案成功怎么做網(wǎng)站免費的網(wǎng)絡(luò)推廣渠道
  • 無錫做網(wǎng)站優(yōu)化價格301313龍虎榜
  • 做網(wǎng)站組織架構(gòu)西安高端模板建站
  • 做網(wǎng)站端口無法清除十大經(jīng)典事件營銷案例分析
  • 頂尖網(wǎng)站設(shè)計東莞百度快照優(yōu)化排名
  • 小魚賺錢網(wǎng)站能重復(fù)做任務(wù)嗎電商網(wǎng)站對比表格
  • 大良營銷網(wǎng)站建設(shè)價位在線看crm系統(tǒng)
  • 房山成都網(wǎng)站建設(shè)肇慶seo按天收費
  • 西安國內(nèi)做網(wǎng)站的公司有哪些排行榜前十名
  • html5flash設(shè)計開發(fā)|交互設(shè)計|網(wǎng)站建設(shè) 青島樂天seo培訓(xùn)中心
  • 網(wǎng)絡(luò)營銷策略內(nèi)容廈門seo俱樂部
  • 做網(wǎng)站需要什么技術(shù)搜索關(guān)鍵詞站長工具
  • 高端網(wǎng)站哪個比較好線上產(chǎn)品推廣方案
  • 針對人群不同 網(wǎng)站做細分全球疫情最新數(shù)據(jù)
  • 免費空間申請網(wǎng)站網(wǎng)絡(luò)營銷在哪里學(xué)比較靠譜
  • 網(wǎng)站備案流程圖上海自動seo
  • 2015年做哪個網(wǎng)站能致富建網(wǎng)站用什么工具
  • 旅游搜索網(wǎng)站開發(fā)百度網(wǎng)站推廣怎么做
  • 鎮(zhèn)江做網(wǎng)站哪家公司好靠網(wǎng)絡(luò)營銷火起來的企業(yè)
  • 方城網(wǎng)站制作網(wǎng)絡(luò)營銷專業(yè)課程
  • 重慶的做網(wǎng)站公司百度風(fēng)云榜小說榜排名
  • 專業(yè)做網(wǎng)站價格廈門百度關(guān)鍵詞優(yōu)化
  • 網(wǎng)站推廣的技巧和方法企業(yè)網(wǎng)站的網(wǎng)絡(luò)營銷功能
  • 在什么網(wǎng)站做貿(mào)易好最簡短的培訓(xùn)心得
  • 江蘇建設(shè)廳官方網(wǎng)站安全員北京專門做seo
  • 佛山市網(wǎng)站建設(shè)保定網(wǎng)站建設(shè)方案優(yōu)化
  • 一個域名做多個網(wǎng)站快速seo優(yōu)化
  • 如何做話費卡回收網(wǎng)站開發(fā)網(wǎng)站多少錢