歡迎來到培訓(xùn)無憂網(wǎng)!
咨詢熱線 400-001-5729
2022-04-07 09:17:08|已瀏覽:211次
python怎么自學(xué)?python是一種簡單易學(xué)且功能強(qiáng)大的編程語言,它具有口語化的變成方式,深受大家喜愛。隨著人工智能的發(fā)展,python越來越受大家喜愛。在使用python編程的過程中我們總會(huì)遇到各種各樣的問題,但是我們總會(huì)找到解決的方案的。例如下面的這個(gè)問題。以下是小編為你整理的python怎么自學(xué)?
python怎么自學(xué)?p#后面的是注釋,不參與運(yùn)行的。這段代碼會(huì)被解釋器跳過,方便程序員理解程序。
python時(shí)候區(qū)分大小寫的,運(yùn)行了上面的程序以后,name就是一個(gè)變量了,
我們輸入name,程序會(huì)輸出name的值,但是輸入Name,因?yàn)镹ame沒有定義,
所以報(bào)錯(cuò)了。
>>> name
'henry'
>>> Name
Traceback (most recent call last):
File "
", line 1, in
Name
NameError: name 'Name' is not defined
>>>
選擇什么版本
首先下載安裝python,建議安裝2.7版本以上,3.0版本以下,由于3.0版本以上不向下兼容,體驗(yàn)較差。
打開文本編輯器,推薦editplus,notepad等,將文件保存成 .py格式,editplus和notepad支持識別python語法。
腳本第一行一定要寫上 #!usr/bin/python
表示該腳本文件是可執(zhí)行python腳本
如果您的python目錄不在usr/bin目錄下,則替換成當(dāng)前python執(zhí)行程序的目錄
編寫完腳本之后注意調(diào)試、可以直接用editplus調(diào)試。調(diào)試方法可自行百度。腳本寫完之后,打開CMD命令行,前提是python 已經(jīng)被加入到環(huán)境變量中,如果沒有加入到環(huán)境變量,請百度
在CMD命令行中,輸入 “python” + “空格”,即 ”python “;
將已經(jīng)寫好的腳本文件拖拽到當(dāng)前光標(biāo)位置,然后敲回車運(yùn)行即可
__str__()方法
如果要把一個(gè)類的實(shí)例變成 str,就需要實(shí)現(xiàn)特殊方法__str__()。
Python 定義了__str__()和__repr__()兩種方法,__str__()用于顯示給用戶,而__repr__()用于顯示給開發(fā)人員。一般定義__repr__()的快捷辦法是直接:
__repr__ = __str__
那么怎么定義__str__()呢?
Class Person(Object):
def __init__(self,name,gender):
self.name = name
self.gender = gender
def __str__(self):
return '(Person: %s, %s)' % (self.name, self.gender)
__repr__ = __str__
__cmp__()方法:
對 int、str 等內(nèi)置數(shù)據(jù)類型排序時(shí),Python的 sorted() 按照默認(rèn)的比較函數(shù) cmp 排序,但是,如果對一組 Student 類的實(shí)例排序時(shí),就必須提供我們自己的特殊方法 __cmp__()。__cmp__用實(shí)例自身self和傳入的實(shí)例進(jìn)行比較,如果實(shí)例自身self 應(yīng)該排在前面,就返回 -1,如果傳入的實(shí)例應(yīng)該排在前面,就返回1,如果兩者相當(dāng),返回 0。
舉例:
Class Student(Object):
def __init__(self,name,gender,score):
self.name = name
self.gender = gender
def __str__(self):
return '(Student: %s, %s, %s)' % (self.name, self.gender, self.score)
__repr__ = __str__
def __cmp__(self, s):
if self.name < s.name:
return -1
elif self.name > s.name:
return 1
else:
return 0
L = [Student('Tim', 99), Student('Bob', 88), Student('Alice', 77)]
print sorted(L)
注意:上面粗體部分也可以直接使用簡寫方式:
return cmp(self.name, s.name)
__len__()方法:
如果一個(gè)類表現(xiàn)得像一個(gè)list,要獲取有多少個(gè)元素,就得用 len() 函數(shù)。
def __len__(self):
return len(self.names)
@property:Python內(nèi)置的@property裝飾器就是負(fù)責(zé)把一個(gè)方法變成屬性調(diào)用的;
一個(gè)類實(shí)例也可以變成一個(gè)可調(diào)用對象,只需要實(shí)現(xiàn)一個(gè)特殊方法__call__()。
__slots__的目的是限制當(dāng)前類所能擁有的屬性
注:尊重原創(chuàng)文章,轉(zhuǎn)載請注明出處和鏈接 http://www.dedgn.cn/news-id-27773.html 違者必究!部分文章來源于網(wǎng)絡(luò)由培訓(xùn)無憂網(wǎng)編輯部人員整理發(fā)布,內(nèi)容真實(shí)性請自行核實(shí)或聯(lián)系我們,了解更多相關(guān)資訊請關(guān)注python培訓(xùn)頻道查看更多,了解相關(guān)專業(yè)課程信息您可在線咨詢也可免費(fèi)申請?jiān)囌n。關(guān)注官方微信了解更多:150 3333 6050