2018-09-29 05 day


一恳蹲、認識Python

1.常用的快捷鍵

  • control+/注釋的快捷鍵,添加或取消注釋芳悲,刪除代碼可以將代碼注釋榛丢,方便以后使用
  • control+s保存
  • control+b編譯(在相應軟件中有用)
  • control+r執(zhí)行或編譯加執(zhí)行
  • control+c復制/拷貝
  • control+v粘貼
  • control+x剪切
  • control+z撤銷
  • control+shift+z/control+y反撤銷
  • control+f查找
  • control+a全選
  • control+n新建
  • shift可以選擇部分內(nèi)容(和鼠標配合,選擇開始和結(jié)束中間的部分)
  • control可以讓多個位置出現(xiàn)光標(和鼠標配合)

附:不是只在Python里有效


二、Python的基本用法

1.注釋

  • 意義:寫在代碼中不參與編譯執(zhí)行的部分

  • 作用:對代碼進行注釋說明谁尸,方便程序員更好的閱讀

  • 分類:
    單行注釋:在文本內(nèi)容前面加#
    多行注釋:
    a.每一行前都加一個#號
    # 我是注釋1
    # 我是注釋2
    b.將注釋放在三個單引號/三個雙引號中(推薦使用雙引號)
    '''
    我是多行注釋1
    我是多行注釋2
    '''

2.標識符

  • 作用:標識符是用來命名的(比如變量名舅踪,函數(shù)名,類名)

  • 要求:
    a.由字母數(shù)字和下劃線組成症汹,并且數(shù)字不能開頭(Python2.x規(guī)范)
    b.在Unicode編碼中硫朦,除了ASCII碼表中的字母、數(shù)字背镇、下劃線以外不能作為標識符的一部分咬展,其他都可以,數(shù)字不能開頭(Python3.x規(guī)范)

注意: 在實際開發(fā)中瞒斩,現(xiàn)在還是推薦使用Python2.x規(guī)范

  • 測試代碼:
abc = 100
abc123 = 100
abc_123 = 100
_123 = 100
# 1abc = 100 報錯
你好 = 100

3.語句

C/JAVA語法破婆,每條語句結(jié)束必須加分好

python中一條語句結(jié)束可以加分號也可以不加;如果一行顯示多條語句胸囱,那么每條語句之間必須加分號

  • 測試代碼:
print('abc');print('ABC')
  • 測試結(jié)果:


    語句案例測試結(jié)果

4.行和縮進

同樣等級的代碼對應的縮進必須一致,只有在需要產(chǎn)生代碼塊的時候才需要加縮進祷舀,函數(shù)的聲明和類的聲明的前后需要有兩個空行

5.多行顯示問題

  • a. 在需要換行的地方加反斜杠,然后再換行(反斜杠需要破壞數(shù)據(jù)本身)
sum1 = 1312321323+123213213123+1232142321+\
       213213123213+2321321312+21321321321+\
       3213213+12321321321+123213213
  • b. 如果是列烹笔、字典裳扯、元祖和集合的值,可以直接換行
name = [1321,13213,2324343,535353,
        3434343,2432423432,3543532532,
        34532532532,32532532532,3532535325,
        35325325,2353253253]

6.常見的數(shù)據(jù)類型及其自變量

分類:

中文 英文
整型 int
浮點型 float
布爾 bool
字符串 str
列表 list
字典 dict
元祖 tupl
集合 set

介紹:

  • 整型:相當于數(shù)學中的整型谤职,例如:100,-12,+30

  • 浮點型:帶小數(shù)點的數(shù)饰豺,例如:12.12,0.0,-12.53

  • 布爾型:只有兩個值,分別是True(真)和False(假)

  • 字符串:用單引號或者雙引號括起來的數(shù)據(jù)允蜈,例如:'abc','100','abc100`~'

7.關(guān)鍵字

  • 意義:在python中有特殊功能和特殊意義的一些標識符(單詞)

  • 打印關(guān)鍵字代碼:

import keyword  #導入keyword模塊
print(keyword.kwlist)  #打印所又的關(guān)鍵字
  • 結(jié)果:


    123.JPG

三冤吨、數(shù)字類型

1.四種數(shù)字類型

中文 英文
整型 int
浮點型 float
布爾 bool
復數(shù) complex

2.數(shù)字類型簡介

  • a.整型(int):包含python所有整型,Python3.x整型只有int類型這一種饶套,但是Python2.x除了int還有l(wèi)ong

例子:

100
123
-78
+782
  • b.浮點型(float):包含了python中所有小數(shù)
    注意:浮點型支持科學計數(shù)法

例子:

12.89
-123.9098
+237.890
print(12e2)     #12*10^2   1200.0
print(12e-3)    #12*10^(-3)   0.012
  • c.布爾(bool):布爾類型的值只有兩個漩蟆,分別是True(對應1)和False(對應0)
    注意:布爾值的首字母是大寫的

例子:

True
False
print(False+1)     #1
print(True+1)      #2
  • d.復數(shù)(complex):由實部和虛部組成的數(shù)字

例子:

10+10j

3.獲取數(shù)字類型

  • 方法:在Python中采用type(數(shù)值/變量),來獲取括號中值的類型

  • 例子:

print(type(10j))
print(type(100))
print(type(True))
print(type(2e2))
  • 結(jié)果:
    獲取數(shù)據(jù)類型結(jié)果

4.轉(zhuǎn)換數(shù)字類型

  • 方法:在Python中采用類型名()妓蛮,將其他類型的數(shù)據(jù)怠李,轉(zhuǎn)化成當前類型
  • 例子:
print(int(12.5))
print(bool(10))
print(float(100))
print(complex(100))
# print(int(10j))     注意:復數(shù)不能轉(zhuǎn)換成整型和浮點型
  • 結(jié)果:


    轉(zhuǎn)換數(shù)據(jù)類型結(jié)果

四、變量

1.變量

作用:程序在內(nèi)存中存儲數(shù)據(jù)的容器

2.聲明變量

  • 概念:在內(nèi)存中開辟空間存儲數(shù)據(jù)

  • 方法:
    C/Java聲明變量:類型 變量名 = 初值;
    Python聲明變量:變量名 = 初值

  • 說明:
    a.變量名:程序員自己命名蛤克,要求是標識符捺癞,并且不是關(guān)鍵字;
    所有的字母必須是小寫的,如果變量名由多個單詞組成咖耘,多個單詞之間用下劃線隔開;
    看見變量名翘簇,要知道這個變量大概存的是什么數(shù)據(jù)
    b.=:賦值符號,將等號右邊的值賦給左邊的變量
    c.初值:有值的表達式(具體的自變量或者是其他已經(jīng)聲明過的變量)

注意:變量只有在賦完值后才能使用(只能聲明后才能使用)

# 將變量student_name中的值儿倒,賦給new_name
new_name = student_name
# print(new_name2)     NameError: name 'new_name2' is not defined
  • 測試代碼:
# 聲明一個變量number并且賦值為100
number = 100
print(number)     
# True = 12.5     SyntaxError: can't assign to keyword
# 1abc = True       SyntaxError: invalid syntax
# 聲明一個變量student_name版保,賦值為'小明'
student_name = '小明'
print(student_name)
# 注意:雖然int呜笑、float、bool等不是關(guān)鍵字彻犁,但在需要命名的時候叫胁,最好不用他們來命名,否則會改變它們原來的功能
# int = 100
# print(int)
# int(89.9)
  • 測試結(jié)果:


    打印變量測試結(jié)果
  • 附:聲明完的變量可以重新賦值汞幢,重新賦值后驼鹅,新的值會覆蓋原來的值
student_name = '小花'
print(student_name)
# 注意:在Python中,同一個變量可以存儲不同類型的值
student_name = 100
print(student_name)
重新賦值結(jié)果圖

3.多變量聲明

  • 方法:
    變量名1=變量名2=變量名3... = 初值

  • 測試代碼:

a = b = c = 123
print(a,b,c)     #print同時打印多個數(shù)據(jù)森篷,多個數(shù)據(jù)之間用逗號隔開
  • 測試結(jié)果:


    多變量聲明測試結(jié)果.JPG

4.聲明變量區(qū)別

  • C/Java聲明變量:類型 變量名 = 初值
    int a = 10;
    a = 100;
    開辟4個字節(jié)的內(nèi)存空間a输钩,將10放進去,重新賦值的時候仲智,修改空間內(nèi)的值
  • Python聲明變量:變量名 = 初值
    a = 10
    a = 100
    在內(nèi)存中開辟空間把10存起來买乃,用a將內(nèi)存空間命名,重新賦值的時候钓辆,再開辟空間把100存起來剪验,重新用a命名
  • 附:不同的類型,在內(nèi)存中存儲的時候所占的內(nèi)存不一樣

五前联、運算符

1.運算符類型

  • 分類:
    • 數(shù)學運算符
    • 比較運算符功戚,
    • 邏輯運算符,
    • 賦值運算符似嗤,
    • 位運算

2.數(shù)學運算符

  • 分類:
符號 意義
+ 求和
- 求差
* 求積
/ 求商
% 求余
// 整除
** 冪運算
  • 測試代碼:
#   a.+:求和啸臀,和數(shù)學中的功能一模一樣
print(100 + 10)
print(-100 + 10)
print(12.5 + 3.14)
#   b.-:求差,和數(shù)學中的功能一模一樣
result = 99-23
print(result)     #將99-23的結(jié)果賦給變量result
#   c.*:求乘積双谆,和數(shù)學中的功能一模一樣
print(1.23 * 3)
print(-1.23 * 2)
print(-1.23 * -2)
#   d./:求商壳咕,和數(shù)學中的功能一模一樣
#   注意:和C語言中的/不一樣
print(5/2)
print(12.5/5)
#   e.%取余:求余數(shù)
#   注意:Python中小數(shù)和整數(shù)都可以求余數(shù)
print(5%2)
print(6%2)
print(5.5%0.3)
#   f.//整除:席揽,求商顽馋,結(jié)果只取整整數(shù)部分
print(5//2)
print(6.4//2)
#   g.**冪運算:求冪
#   x ** y :求x的y次方
#   技巧:可以通過設置y的值來實現(xiàn)開方
print(2**3)
print(100*0.5)
  • 測試結(jié)果:


    數(shù)學運算符測試代碼

3.比較運算符

  • 分類:
符號 意義
> 大于
< 小于
== 等于
!= 不等于
>= 大于等于
<= 小于等于
  • 附:所有比較運算的結(jié)果是布爾值:True/False

  • 測試代碼:

print(100 > 10)
print(100 < 10)
print(12.5 == 12.5)
print(10 == 12.5)
number = 10
print(number == 10)     #False
print(number)
print(number != 100)    #True
print(100 >= 100)       #True
print(10<11)            #True
print(10<=10)           #True
  • 測試結(jié)果:


    比較運算符測試結(jié)果

4.邏輯運算符

  • 分類:
符號 意義
and
or
not
  • 介紹:
    a.值1 and 值2:兩個都為True,結(jié)果才是True幌羞,否則都是False寸谜,相當于生活中的并且(要求多個條件同時滿足時,使用and連接)
    b.值1 and 值2:兩個都為False属桦,結(jié)果才是False熊痴,否則都是True,相當于生活中的或者(要求多個條件有一個滿足時聂宾,使用or連接)
    c.not 值:值取反(True -> False;False -> True),相當于生活中的不是(否定某個條件的時候使用not)

  • 測試代碼:

a.值1 and 值2:兩個都為True果善,結(jié)果才是True,否則都是False系谐,相當于生活中的并且
print('=====================================')
print(True and True)     #True
print(True and False)    #False
print(False and True)    #False
print(False and False)   #False
# 練習:獲得獎學金的條件:要求績點在3.5以上巾陕,并且操評分在90分
grade = 2.8
score = 95
# 條件一:
grade > 3.5
# 條件二:
score > 90
# 兩個條件同時滿足
print(grade > 3.5 and score > 90)
#   b.值1 and 值2:兩個都為False讨跟,結(jié)果才是False,否則都是True鄙煤,相當于生活中的或者
print('=====================================')
print(True or True)     #True
print(True or False)    #True
print(False or True)    #True
print(False or False)   #False
# 練習:是否穿毛衣出門:溫度低于20度晾匠,或者風度高于5級
temperture = 18
wind_speed = 4
# 條件一:
condition1 = temperture < 20    #condition1 = True
# 條件二;
condition2 = wind_speed > 5     #condition2 = False
print(condition1 or condition2)
#   c.not 值:值取反(True -> False;False -> True),相當于生活中的不是
age = 18
# 條件:年齡不大于18
print(age <= 18)
print(not age > 18)
  • 測試結(jié)果:


    邏輯運算符測試結(jié)果
  • 附:Python中and和or會有短路現(xiàn)象
    • and的短路現(xiàn)象:值1 and 值2 -->一旦確定值1的值是False梯刚,就不會執(zhí)行判斷值2
    • or的短路現(xiàn)象:值1 or 值2 -->一旦確定值1的值是True凉馆,就不會執(zhí)行判斷值2

5.賦值運算符

  • 分類:
符號 意義
= 等于
+= 求和等于
-= 求差等于
*= 求積等于
/= 求商等于
%= 求余等于
//= 整除等于
**= 冪運算等于
  • 附:賦值運算符的左邊必須是變量,在賦值的時候是先算賦值符號右邊的結(jié)果亡资,然后再將結(jié)果賦給左邊的變量

測試代碼:

# 100 = 100     SyntaxError: can't assign to literal
result = 10 > 100
print(result)
#   a.=:單純的將右邊的值賦給左邊
num1 = 100
#   b.+=,-=,*=,/=,%=,//=,**=:要求左邊的變量本身必須是有值的
#   變量1 += 值 -->變量1 = 變量1 + 值
num2 = 100
num2 += 10
print(num2)
num3 = 4
num3 *= 2
print(num3)

*測試結(jié)果:


賦值運算符測試代碼

6.運算符的優(yōu)先級

  • 優(yōu)先級:數(shù)學運算符((冪運算>乘澜共、除、取整锥腻、取余>加咳胃、減)>比較運算符>邏輯運算符>賦值運算符

  • 計算方法:先計算優(yōu)先級高的,優(yōu)先級相等旷太,從左往右依次運算展懈,如果有括號優(yōu)先計算括號里的

  • 測試代碼:

print((100 > 200) - 50 * 3)
  • 測試結(jié)果:


    捕獲.JPG

作業(yè)

1.寫代碼獲取數(shù)字1234中的十位上和百位上的數(shù)字

解答:

number = 1234
print(number//10%10)
number = 1234
print(number//100%10)
捕獲.JPG

2.如果變量n的值是6784, 以下表達式的結(jié)果是多少?

  1. n / 1000 % 100
  2. n % 1000 / 100
  3. n // 100 % 10
  4. n // 10 % 100 // 10
  • 解答:
    1. n/1000%100
      =6.784%100
      =6.784
    2. n%1000/100
      =784/100
      =7.84
    3. n//100%10
      =67%10
      =7
    4. n//10%100//10
      =678%100//10
      =78//10
      =7
      *代碼驗證:
print(6784 / 1000 % 100)
print(6784 % 1000 / 100)
print(6784 // 100 % 10)
print(6784 // 10 % 100 // 10)
題二解答

3.表達式 10 / 4 + 23 // 4 * 2 - 30 的結(jié)果是多少?

  • 解答:
    10/4+23//42-30
    =2.5+5
    2-30
    =-17.5
  • 代碼驗證:
print(10 / 4 + 23 // 4 * 2 - 30)
題三解答

4.寫出下面每一行中n3的結(jié)果:n1 = 4; n2 = 5

  1. n3 = n1 >n2
  2. n3 = n1<n2
  3. n3 = n1==4
  4. n3 = n1!=4
  5. n3 = n1 == 1+3
  • 解答:
    1. n3=n1>n2
      ->n3=4>5
      ->n3=Flalse
    2. n3=n1<n2
      ->n3=4<5
      ->n3=True
    3. n3=n1==4
      ->n3=True
    4. n3 = n1!=4
      ->n3=4!=4
      ->n3=Flalse
    5. n3=n1==1+3
      ->n3=n1==4
      ->n3=True
  • 代碼驗證:
n1 = 4
n2 = 5
n3 = n1 > n2
n4= n1 < n2
n5 = n1 == 4
n6 = n1 != 4
n7 = n1 == 1+3
print(n3,n4,n5,n6,n7)
image.png

5.寫出以下代碼執(zhí)行完成后供璧,num的結(jié)果

num = 10
num /= 2
num += 10 * 10 / 4 + 23*2

  • 解答:
num = 10
num /= 2
num += 10 * 10 / 4 + 23*2
捕獲.JPG

6.下面定義變量正確的是()

a. a = b = c = 10
b. a, c = 10
c. in = 20
d. num = 10; t = 20

  • 解答:
    AD
    B:'int' object is not iterable
    C:invalid syntax
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末存崖,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子睡毒,更是在濱河造成了極大的恐慌来惧,老刑警劉巖,帶你破解...
    沈念sama閱讀 216,651評論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件演顾,死亡現(xiàn)場離奇詭異供搀,居然都是意外死亡,警方通過查閱死者的電腦和手機钠至,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,468評論 3 392
  • 文/潘曉璐 我一進店門葛虐,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人棉钧,你說我怎么就攤上這事屿脐∠芮洌” “怎么了的诵?”我有些...
    開封第一講書人閱讀 162,931評論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長西疤。 經(jīng)常有香客問我撒遣,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,218評論 1 292
  • 正文 為了忘掉前任个初,我火速辦了婚禮,結(jié)果婚禮上珍逸,老公的妹妹穿的比我還像新娘逐虚。我一直安慰自己,他們只是感情好谆膳,可當我...
    茶點故事閱讀 67,234評論 6 388
  • 文/花漫 我一把揭開白布叭爱。 她就那樣靜靜地躺著,像睡著了一般摹量。 火紅的嫁衣襯著肌膚如雪涤伐。 梳的紋絲不亂的頭發(fā)上馒胆,一...
    開封第一講書人閱讀 51,198評論 1 299
  • 那天缨称,我揣著相機與錄音,去河邊找鬼祝迂。 笑死睦尽,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的型雳。 我是一名探鬼主播当凡,決...
    沈念sama閱讀 40,084評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼山害,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了沿量?” 一聲冷哼從身側(cè)響起浪慌,我...
    開封第一講書人閱讀 38,926評論 0 274
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎朴则,沒想到半個月后权纤,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,341評論 1 311
  • 正文 獨居荒郊野嶺守林人離奇死亡乌妒,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,563評論 2 333
  • 正文 我和宋清朗相戀三年汹想,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片撤蚊。...
    茶點故事閱讀 39,731評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡古掏,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出侦啸,到底是詐尸還是另有隱情槽唾,我是刑警寧澤,帶...
    沈念sama閱讀 35,430評論 5 343
  • 正文 年R本政府宣布光涂,位于F島的核電站夏漱,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏顶捷。R本人自食惡果不足惜挂绰,卻給世界環(huán)境...
    茶點故事閱讀 41,036評論 3 326
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望服赎。 院中可真熱鬧葵蒂,春花似錦、人聲如沸重虑。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,676評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽缺厉。三九已至永高,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間提针,已是汗流浹背命爬。 一陣腳步聲響...
    開封第一講書人閱讀 32,829評論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留辐脖,地道東北人饲宛。 一個月前我還...
    沈念sama閱讀 47,743評論 2 368
  • 正文 我出身青樓,卻偏偏與公主長得像嗜价,于是被迫代替她去往敵國和親艇抠。 傳聞我的和親對象是個殘疾皇子幕庐,可洞房花燭夜當晚...
    茶點故事閱讀 44,629評論 2 354