笨方法學(xué)Python
1.注意input()
,用戶輸入的數(shù)據(jù)會(huì)轉(zhuǎn)換為字符串形式輸出胸囱。
2.
①for...in
- 輸出的是"數(shù)組" / "列表"中的數(shù)據(jù),而不是js
中的索引號
②列表中可包含多種數(shù)據(jù)類型 - 注意%r
③注意range
- range(m,n)
- [m,n)
- 左閉右開
④還有 append
(追加)這個(gè)神奇的東西
- 注意先要定義一個(gè)列表 -
elements = []
3.序數(shù) & 基數(shù)
- 序數(shù)(ordinal number)表示事物的順序瀑梗,從1開始(有序)烹笔。
- 基數(shù)(cardinal number)表示索引號,從0開始抛丽,隨機(jī)選取谤职。
4.exit(0) 和 exit(1) 的區(qū)別?
- exit(0):意味著是安全退出亿鲜,無任何錯(cuò)誤允蜈。
- exit(1):意味著代碼存在一些問題,從而導(dǎo)致的退出蒿柳。
5.debug
①調(diào)試的方式:使用print
將各個(gè)想要檢查的關(guān)鍵環(huán)節(jié)將關(guān)鍵變量打印出來饶套,進(jìn)行檢查。
②讓程序分段運(yùn)行垒探,寫一點(diǎn)妓蛮,運(yùn)行一點(diǎn),再修改一點(diǎn)圾叼。
6.
Keywords(關(guān)鍵字):and / del / from / not / while / as / elif / global / or / with / assert / else / if / pass / yield / break / except/ import / print / class / exec / in / raise / continue / finally / is / return / def / for / lambda / try
Data type(數(shù)據(jù)類型):True / False / None / strings / numbers /floats / lists
字符串轉(zhuǎn)移序列(Escape Sequences):\\ 蛤克、\' 、 \" 褐奥、 \a 咖耘、 \b 、 \f 撬码、 \n 儿倒、 \r 、 \t 、 \v
\a :bell(響鈴符)
\b:backspace(退格符)
\f:form feed(進(jìn)紙符)
\r:carriage return(回車符)
\t:horizontal tab(水平制表符)
\v:vertical tab(垂直制表符)
\ooo:Character with octal value ooo(值為八進(jìn)制ooo的字符)
\xhh:Character with hex value hh(值為十六進(jìn)制數(shù)hh的字符)
字符串格式化(string formats):%d | %i | %o | %u | %x | %X | %e | %E | %f | %F | %g | %G | %c | %r | %s | %%
%o:轉(zhuǎn)成無符號八進(jìn)制數(shù)
%u:轉(zhuǎn)成無符號十進(jìn)制
%x / %X:轉(zhuǎn)成無符號十六進(jìn)制數(shù)夫否,(x/X代表轉(zhuǎn)換后的十六進(jìn)制字符的大小寫)
%e / %E:轉(zhuǎn)成科學(xué)計(jì)數(shù)法
%f / %F:轉(zhuǎn)成浮點(diǎn)數(shù)
%g / %G:%e和%f / %E和%F的簡寫
%%:輸出%
%c:轉(zhuǎn)成字符彻犁,(ASCII碼,或者長度為1的字符串)
操作符號: + 凰慈、 - 汞幢、 * 、 / 微谓、% 森篷、 < 、 > 豺型、 <= 仲智、 >= 、== 姻氨、 钓辆!= 、() 肴焊、[] 前联、{} 、 , 娶眷、 : 似嗤、. 、 = 茂浮、+= 双谆、-= 、*= 席揽、/= 顽馋、%= 、**(乘方)幌羞、 //(取整除 - 返回商的整數(shù)部分) 寸谜、<>(不等于,同!=) 属桦、@(待定) 熊痴、 ; (分號)、//=(取整除賦值運(yùn)算符) 聂宾、**=(冪賦值運(yùn)算符)
7.閱讀代碼時(shí)果善,標(biāo)記的流程:
①函數(shù)以及每個(gè)函數(shù)的功能。
②每個(gè)變量的初始賦值系谐。
③特別當(dāng)心在程序的各個(gè)部分中多次出現(xiàn)的變量巾陕。
④任何不包含else
的if
語句讨跟,判斷它們正確與否?
⑤任何可能沒有結(jié)束點(diǎn)的while
循環(huán)鄙煤。
⑥記下看不懂的代碼晾匠。
8.
mystuff.append('hello')
//其實(shí)是這樣的
append(mystuff,'hello')
9.stuff1
里面有3個(gè)姓名,但是我需要5個(gè)姓名梯刚,stuff2
中也有3個(gè)姓名凉馆,如何將stuff2
中的補(bǔ)足給stuff1
?
①有個(gè)小問題:列表中的數(shù)據(jù)經(jīng)過pop()之后亡资,才會(huì)自動(dòng)更新迭代掉澜共。
解決:在上面寫個(gè)
stuff2_list = stuff2.split(' ')
10.注意-1
是最后一個(gè)喔~
11.如何將一個(gè)列表轉(zhuǎn)成字符串?
12.列表的方括號用法
13.Python
中的字典dictionary(dict / hash)
類似于JavaScript
中的對象(object)沟于。
①字典(對象)和列表(數(shù)組)的差別咳胃?
②可用del
刪除的字典中的"鍵值對"
14.類的風(fēng)格
①類名應(yīng)該使用camel case
(駝峰式大小寫)
②函數(shù)名一個(gè)使用underscore format
(下劃線隔詞)
③不要對全局變量或者來自模組的變量進(jìn)行重定義或者賦值植康,讓這些東西自顧自就行了
④好好寫注釋(一語中的)旷太,弄清楚為什么要這么做?why???
15.魚和泥鰍
①魚是一個(gè)"類"销睁,它并不是一個(gè)真正的東西供璧,而是一個(gè)概括性的詞匯,用來描述具有相同特征(屬性)的實(shí)例冻记。有鰭睡毒?有鰾?住在水中冗栗?
②泥鰍也是一個(gè)"類"演顾,這個(gè)"類"也有它特定的屬性。細(xì)長條隅居?無鱗片钠至?愛鉆泥巴?
③這個(gè)時(shí)候家庭煮夫過來了胎源,他跟河蟹專家說:"非也非也棉钧,你看的是泥鰍,我看到的是"小方"涕蚤,而且我要把"小方"和剁椒配一起做一道小菜"宪卿。于是,就有一個(gè)叫做"小方的"泥鰍的"實(shí)例(instance)
"(注意喔万栅,泥鰍也是魚的一個(gè)實(shí)例)佑钾,并且對它進(jìn)行了加工,這樣它就是一個(gè)"對象(Object)
"
16.區(qū)分Class和Object的兩個(gè)小技巧:
①是什么烦粒?魚和泥鰍的關(guān)系
②有什么休溶?泥鰍和鰓的關(guān)系
1.命令行模式和Python
交互模式
①命令行模式:
②>>>
是Python
交互環(huán)境
2.直接運(yùn)行py
文件的方法?
①Mac
和Linux
環(huán)境下是可以的,方法是在.py
文件的第一行加上一個(gè)特殊的注釋;
#!/usr/bin/env python3
print('Hello,Gerg')
②然后邮偎,通過命令給hello.py
以執(zhí)行權(quán)限
$ chmod a+x hello.py
3.print()
會(huì)依次打印每個(gè)字符串管跺,遇到逗號,
會(huì)輸出一個(gè)空格:
4.當(dāng)你輸入name = input()
并按下回車后,Python
交互式命令行就在等待你的輸入禾进。這時(shí)豁跑,你就可以輸入任意字符,然后按回車完成輸入泻云。
- 有了輸入艇拍,用戶才能告訴計(jì)算機(jī)程序所需的信息。
- 有了輸出宠纯,程序運(yùn)行后才能告訴用戶任務(wù)的結(jié)果卸夕。
5.任何一種編程語言都有自己的一套語法,編譯器或解釋器負(fù)責(zé)把符合語法的程序代碼轉(zhuǎn)換成CPU
能夠執(zhí)行的機(jī)器碼婆瓜,然后執(zhí)行快集。
6.縮進(jìn)的壞處:"復(fù)制 - 粘貼"
功能失效了。當(dāng)你重構(gòu)代碼時(shí)廉白,粘貼過去的代碼必須重新檢查縮進(jìn)是否正確个初。
7.Python
中的數(shù)據(jù)類型:整數(shù)、浮點(diǎn)數(shù)猴蹂、字符串院溺、布爾值、空值
整數(shù):(包括十六進(jìn)制:0x前綴和0-9磅轻,a-f表示)
浮點(diǎn)數(shù):之所以稱為浮點(diǎn)數(shù)珍逸,是因?yàn)榘凑湛茖W(xué)計(jì)數(shù)法表示時(shí),一個(gè)浮點(diǎn)數(shù)的小數(shù)點(diǎn)位置是可變的
字符串:單引號和雙引號只是一種表示方法聋溜,不是字符串的一部分谆膳,因此
'abc'
只有a
,b
,c
三個(gè)字符。如果字符串中有許多字符都需要轉(zhuǎn)義勤婚,就需要加很多
\
摹量,為了簡化,Python允許用r' '
表示'內(nèi)部的字符串默認(rèn)不轉(zhuǎn)義馒胆。
- 如果字符串內(nèi)部有很多換行缨称,用
\n
寫在一行里不好閱讀,為了簡化祝迂,
''''''.png
-
r' '
和'''...'''
可結(jié)合
布爾值:
True
和False
睦尽,and
(與運(yùn)算)、or
(或運(yùn)算)型雳、not
(非運(yùn)算)空值
None
:這玩意和0
還是有區(qū)別的当凡,因?yàn)?code>0是有意義的山害,而None
是一個(gè)特殊的空值。
8.什么是動(dòng)態(tài)語言沿量?變量本身的數(shù)據(jù)類型不固定的語言浪慌,如:Python
,JavaScript
9.變量在計(jì)算機(jī)內(nèi)存中的表示朴则?
10.變量a
賦值給另一個(gè)變量b
11.在Python
中权纤,通常用全部大寫的變量名來表示常量。
12.小結(jié)
①Python
支持多種數(shù)據(jù)類型乌妒,在計(jì)算機(jī)內(nèi)部汹想,可以把任何數(shù)據(jù)看成一個(gè)"對象",而變量就是在程序中用來指向這些數(shù)據(jù)對象的撤蚊,對變量賦值就是把數(shù)據(jù)和變量關(guān)聯(lián)起來古掏。
②Python
的整數(shù)沒有大小限制。
③Python
的浮點(diǎn)數(shù)也沒有大小限制侦啸,但是超出一定范圍就直接表示為inf
(無限大)槽唾。