day02-基礎(chǔ)語法、變量、運算符、進(jìn)制轉(zhuǎn)換

1.常用的快捷方式:

  • control + / ----單行注釋
  • control + s ----保存 control + b ----編譯(編譯執(zhí)行)
  • control + n ----新建文件
  • control + c ----復(fù)制
  • control + v ----粘貼
  • control + a ----全選
  • control + x ----剪切
  • control + z ----撤銷
  • control + y / control + shift + z ----反撤銷
  • 按住control不放,讓鼠標(biāo)可以同時在多個位置設(shè)置光標(biāo)
  • control + f ----彈出搜索框

2.print 函數(shù)是python內(nèi)置函數(shù),作用是在控制臺打印print后面()里面的任何內(nèi)容

  1. ()里面的單引號,是字符串的標(biāo)志,而不是內(nèi)容
    在python2.x中,print 'hello world'
    在python3.x中,print后面需要括號
  2. A.B.C版本號。A--> 重大修改(不向下兼容) B--> 添加新的功能 C--> 修復(fù)一些bug
    print ('hello world')
    print ('世界你好')
    輸出結(jié)果為:
hello world
世界你好

3.注釋

注釋就是代碼源文件中用來注解說明的文字,不會對代碼的功能產(chǎn)生任何影響
注意:好的代碼和好的程序員,需要對代碼通過注釋進(jìn)行說明
例如:# 我是單行注釋
"""
這是多行注釋(一般用這個)
"""
'''
這是多行注釋
'''
補充:編程語言中涉及到的所有的符號,都是指的英文輸入法狀態(tài)下的符號

4.標(biāo)識符

標(biāo)識符是用來程序中命名用的。(比如:變量名、類名、函數(shù)名)
a.標(biāo)識符是由字母、數(shù)字和下劃線組成,并且數(shù)字不能開頭(硬性) ---python3.x中,標(biāo)識符中可以有中文
b.不能是關(guān)鍵字(保留字)(硬性)
c.大小寫敏感(區(qū)分大小寫)
d.要見名知義(規(guī)范)
e.不推薦使用Python中的內(nèi)置函數(shù)、類名去作為標(biāo)識符(規(guī)范)

5.關(guān)鍵字

  1. 系統(tǒng)保留的有特殊功能或者特殊意義的一些單詞,這些單詞不能用來給變量\函數(shù)\類命名的。
    具體的關(guān)鍵字有:
    False, None, True, and, as, assert, async, await, break, class, continue, def, del, elif, else, except, finally, for, from, global, if, import, in, is, lambda, nonlocal, not,or, pass, raise, return, try, while, with,yield
  2. 如何查看關(guān)鍵字:
    import keyword
    print (keyword.kwlist)
    結(jié)果:
['False', 'None', 'True', 'and', 'as', 'assert', 'async', 'await', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']

6.行與縮進(jìn)

  1. 縮進(jìn):每一行代碼的位置,與行開頭的位置之間的空格。
  • 在Python中,縮進(jìn)的寫法有嚴(yán)格的規(guī)范。同一級的代碼必須寫在同一個縮進(jìn)下面。
  • 如果在不該有空格產(chǎn)生的位置出現(xiàn)了多余的空格,程序會報錯(IndentationError);如果在需要縮進(jìn)的時候沒有縮進(jìn)也會報錯
  1. 關(guān)于行的規(guī)范:
    函數(shù)和類的聲明的前后必須要有兩個換行,一般一個功能實現(xiàn)完,實現(xiàn)下一個功能的時候,最好也換行

7.多行語句

  1. 一條語句在多行顯示。
    a.在需要換行的地方加反斜杠(\),然后再換行
    b.字典,列表,集合,和元組等容器類型數(shù)據(jù)的字面量,在多行顯示的時候可以直接換行
  2. Python中,一條語句結(jié)束,可以不寫分號;但是如果一行中要寫多條語句,那么每條語句之間必須使用分號隔開
    例如:
    print ('aa');print ('bb')
    print ('安徽省就打開電話時空大家看好安徽
    省就打開電話時空大家看好安徽省就打開電
    話時空大家看好安徽省就打開電話時空大家看好')
    print ([1,2,3,4,
    5,6,7,8,9])
    結(jié)果:
aa
bb
安徽省就打開電話時空大家看好安徽省就打開電話時空大家看好安徽省就打開電話時空大家看好安徽省就打開電話時空大家看好
[1, 2, 3, 4, 5, 6, 7, 8, 9]

8.字面量

數(shù)據(jù)類型對應(yīng)的具體的值
10,100,-12 ---> 整數(shù)
12.5,3.1415,-0.13 ---> 小數(shù)
12e2,9e-2 ---> 數(shù)字
9 + 10j ---> 復(fù)數(shù)
'hello world','123','abc',"ac","!asda" --->字符串
True,False --->布爾值
[1,2,'a','asda'] ---> 列表
{'a':1,'b':'123'} ---> 字典

9.Python 中的基本數(shù)據(jù)類型

  1. 數(shù)字(整型(int)、浮點型、布爾、復(fù)數(shù))、字符串(str)、列表(list)、字典(dict)、集合(set)、元組(tuple)、none(代表沒有值)
  • 整型:int (在python2.x有l(wèi)ong) ---> 值是所有的整數(shù)
  • 浮點型:float --->包含所有的小數(shù)和科學(xué)計數(shù)
  • 布爾:bool ---> 值只有True和False
  • 復(fù)數(shù):complex --> 值包含所有的復(fù)數(shù)
  1. 可以通過type函數(shù)查看數(shù)據(jù)的類型:type(數(shù)據(jù))
    例如:
    print (type(10e2))
    print (type('ab'))
    結(jié)果為:
<class 'float'>
<class 'str'>

10. 什么是變量

  1. 在程序中可以通過變量來存儲數(shù)據(jù)(容器)
  2. 怎么聲明變量
    a. 嚴(yán)格來說,Python中的變量不需要聲明,直接通過賦值符號(=)給變量賦值,就是在聲明變量。
    因為Python是動態(tài)語言,在聲明變量的時候,不需要指定變量的類型。并且同一個變量可以賦不同類型的值
    b. 格式:變量名 = 值
    變量名:標(biāo)識符,PEP8的命名方式(所有的字母都小寫,多個單詞之間用下劃線隔開,如:user_name)
    c. 駝峰式命名:第一個單詞首字母小寫,后邊每個單詞的首字母都大寫(例如:userName)
    例子:
    聲明了一個變量age,并且賦值為18
    age = 18
    使用變量的時候,就相當(dāng)于使用變量中存的值
    print (age)
  3. 如果重新給一個變量賦值,那么新賦的值會覆蓋原來的值。同一個變量可以賦不同類型的值。
    例子:
    stu_age = 20
    print (stu_age)
    print (type(stu_age))
    stu_age = 18.5
    print (stu_age,type(stu_age))
    結(jié)果:
20
<class 'int'>
18.5 <class 'float'>

補充

  1. 一個數(shù)據(jù)有type(類型)、id(數(shù)據(jù)存儲在計算機(jī)中的地址)和value(值)三個屬性
  2. 變量存儲數(shù)據(jù)的時候,有兩種情況。第一種情況:存value ---> 數(shù)字類型、字符串,第二種情況:存id ---> 字典、列表、集合、元組、類的對象
    輸出number的地址:
    number = 10
    print (id(number))
    結(jié)果:
140722589652288

11.數(shù)學(xué)運算符、比較運算符、邏輯運算符、賦值運算符、位運算符(針對二進(jìn)制的每一位)

  1. 數(shù)學(xué)運算符(+、-、、/、%、*、//)
  • +:求和運算
    注意:求和操作,+兩邊必須是數(shù)字類型
    True --> 1 False --> 0
    舉例:
    print (10 + 20.1,True + 1)
    結(jié)果:
30.1 2
  • -:求差
    print (100 - 10)
90
  • *:求乘積
    number = 3 * 9
    print (number)
27
  • /:求商
    print (5 / 2)
    print (4 / 2)
2.5
2.0
  • %:求兩個數(shù)相除的余數(shù)
    print (5 % 2)
1
  • **:冪運算
    x ** y :求x的y次方
    浮點數(shù)在計算中存儲的時候,有的時候會有一定的誤差
    print (4.2 ** 3)
    print (2 ** 3)
74.08800000000001
8
  • //:整除
    求商,但是只取商的整數(shù)部分
    print (5 // 2)
2

練習(xí):
取一個二位整數(shù)的十位數(shù)(78)
print (78 // 10)

7

取2345中的4
print (2345 % 100 // 10)
或者
print (2345 // 10 % 10)

4
4
  1. 比較運算符:<、 >、 ==、 >=、 <=、 !=
    比較運算符的結(jié)果全是布爾值:True/False
    3.在Python中,可以像數(shù)學(xué)中一樣,連續(xù)判斷
    例子:
    判斷number是否在10到20之間
    number = 15
    result = 10 < number <20
    print (result)
    結(jié)果:
True
  1. 邏輯運算符:與(and)、或(or)、非(not)
  • and 優(yōu)先級高于 or
  • 邏輯運算符的運算數(shù)據(jù)是布爾值,結(jié)果也是布爾值
  • 布爾1 and 布爾2:兩個都為True結(jié)果才為True,只要有一個False,結(jié)果就是False。 并且
    需要兩個或者多個條件同時滿足,就使用邏輯與(and)
  • 布爾1 or 布爾2:只要有一個是True,結(jié)果就是True,兩個都是False結(jié)果才是False。 或者
    需要兩個或者多個條件中滿足一個就可以,就使用邏輯或(or)
  • not 布爾1:如果是True(False),結(jié)果就是False(True)。
    需要不滿足某個條件的時候才為True
    練習(xí):
    a. 寫一個條件,判斷一個人的年齡是否滿足青年的條件(年齡大于18并且小于28,而且不能是20歲)
    age = 25
    result = age > 18 and age < 28 and age != 20
    print (result)
    結(jié)果:
True

b. 成績不低于60分
score = 70
print (score >= 60)
print (not score < 60)

True

5.賦值運算符
=、 +=、 -=、 *=、 /=、 %=、 **=、 //=

  • 賦值運算符的作用:將賦值符號右邊的表達(dá)式的值賦給左邊的變量
  • 表達(dá)式:有結(jié)果的語句,例如:10,'abc',10+20,30>10.5等
  • 賦值符號的左邊必須是變量
  • 賦值符號,是先算右邊的結(jié)果,然后再把結(jié)果賦給左邊的變量
    舉例:
    number = 100
    number += 10 (相當(dāng)于:number = number + 10)
    print (number)
    結(jié)果:
110

6.運算符的優(yōu)先級
a. 優(yōu)先級從低到高:賦值運算符<邏輯運算符<比較運算符<算數(shù)運算符
b. 算數(shù)運算符中:先先冪運算再乘除取余取整再加減(冪運算 > 乘=除=取余=取整 > 加=減)
c. 如果不確定運算順序,可以加括號改變運算順序,有括號先算括號內(nèi)的

12.數(shù)據(jù)在計算機(jī)中的存儲,存的都是二進(jìn)制數(shù)(0101......)

十進(jìn)制、二進(jìn)制、八進(jìn)制、十六進(jìn)制

  1. 十進(jìn)制
    基數(shù):0,1,2,3,4,5,6,7,8,9
    特點:逢10進(jìn)1

  2. 二進(jìn)制
    基數(shù):0,1
    特點:逢2進(jìn)1
    101011 = 1 + 2 + 0 + 8 + 0 + 32 = 43

  3. 八進(jìn)制
    基數(shù):0,1,2,3,4,5,6,7
    特點:逢8進(jìn)1 12 ---> 10
    24 = 4 * (8^0) + 2 * (8^1) = 20

  4. 十六進(jìn)制
    基數(shù):0-9,a-f(A-F) a = 10 ... f = 15
    特點:逢16進(jìn)1
    2f = 47

進(jìn)制間的轉(zhuǎn)換:

  1. 十進(jìn)制轉(zhuǎn)換成二進(jìn)制:除2取余(短除法,反向取余)123 ---> 1111011
  2. 十進(jìn)制轉(zhuǎn)換成其他進(jìn)制:整除取余法
  3. 八進(jìn)制轉(zhuǎn)換二進(jìn)制:一位八進(jìn)制轉(zhuǎn)換成三位二進(jìn)制 ---> 23 = 010 011
  4. 十六進(jìn)制轉(zhuǎn)二進(jìn)制:一位十六進(jìn)制轉(zhuǎn)換成四位的二進(jìn)制 ---> 2f = 0010 1111

13.Python 中的二進(jìn)制、八進(jìn)制和十六進(jìn)制

默認(rèn)的數(shù)字都是十進(jìn)制(如:169)

a. 二進(jìn)制
基數(shù)是0,1,并且數(shù)字前加前綴0b表示二進(jìn)制
例如:0b1101
bin(整數(shù)) --> 將其他進(jìn)制的整數(shù)轉(zhuǎn)換成二進(jìn)制數(shù)
print(bin(10))
print(bin(0x10))
結(jié)果:

0b1010
0b10000

b. 八進(jìn)制
基數(shù)的0-7,并且數(shù)字前加0o或者0O表示八進(jìn)制
例如0o176 0O123
oct(整數(shù)) --> 將其他進(jìn)制的整數(shù)轉(zhuǎn)換成八進(jìn)制
print(oct(10))
結(jié)果:

0o12

c. 十六進(jìn)制
基數(shù)是0-9,a-f(A-F),并且數(shù)字前加0x或者0X表示十六進(jìn)制
例如:0x1a 0X2af
hex(整數(shù)) --> 將其他進(jìn)制的整數(shù)轉(zhuǎn)換成十六進(jìn)制
print(hex(10))
結(jié)果:

0xa

作業(yè):

  1. 下列四組數(shù),依次為二進(jìn)制、八進(jìn)制和十六進(jìn)制,符合要求的是( d )
    a. 12, 77, 10
    b. 12, 80, 10
    c. 11, 78, 19
    d. 11, 77, 19

  2. 二進(jìn)制數(shù)加法運算的基本特點是“逢二進(jìn)一”,即0+0=0,0+1=1,1+0=1,1+1=0并進(jìn)位。運用這一基本法則和十進(jìn)制運算的類似規(guī)律,得出二進(jìn)制數(shù)加法運算1001+101的結(jié)果為( c )
    a. 1001
    b. 1010
    c. 1110
    d. 1101

  3. 八進(jìn)制754中的數(shù)碼7對應(yīng)的位權(quán)是( c )
    a. 10^2 b. 16^1 c. 8^2 d. 2^2

  4. 十進(jìn)制數(shù)53轉(zhuǎn)換成二進(jìn)制數(shù)是( b )
    a. 100101
    b. 110101
    c.100100
    d.110100

  5. (偏難)已知,十進(jìn)制中的8在X進(jìn)制中表示為11,即(10)8=(X)11。請問這個X進(jìn)制具體為( b )進(jìn)制
    a. 6
    b. 7
    c. 8
    d. 9

  6. (偏難)二進(jìn)制的1000001相當(dāng)十進(jìn)制的 _ _ ,二進(jìn)制的100.001可以表示為_ ④__。
    A: ① 62 ② 63 ③ 64 ④ 65
    B: ① 23+2–3 ② 22+2–2 ③ 23+2–2 ④ 22+2–3

  7. 下面定義變量正確的是( a,d )
    a. a = b = c = 10
    b. a,c = 10
    c. in = 20
    d. num = 10; t = 20

  8. n = 6784,以下能夠獲取到7 的方法有( c,d )
    a. n / 1000 % 100
    b. n % 1000 / 100
    c. n // 100 % 10
    d. n // 10 % 100 // 10

  9. 以下表達(dá)式 10 / 4 + 23 // 4 * 2 - 30的計算結(jié)果是:-17.5。
    print (10 / 4 + 23 // 4 * 2 - 30 )
    結(jié)果:

-17.5
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容