Python的基本語(yǔ)法和數(shù)據(jù)類型,進(jìn)制落午,原碼谎懦,反碼和補(bǔ)碼

基本語(yǔ)法

一,快捷鍵

補(bǔ)充的新的

ctrl+/ 添加或取消一行注釋
ctrl+n 新建
ctrl+f 搜索
ctrl+r 搜索+替換
ctrl+z 撤銷
ctrl+shift+z 反撤銷
TAB 補(bǔ)充代碼


二溃斋,注釋

  • 注釋:是程序中專門用來(lái)注釋說(shuō)明文字界拦。不參與程序編譯和執(zhí)行。對(duì)程序的功能沒(méi)有任何影響
  • 單行注釋:在說(shuō)明性文字前加#
  • 使用三個(gè)單或雙引號(hào)闊起來(lái)了梗劫,設(shè)置多行注釋
    例:
"""
多行
注釋
"""

三享甸,標(biāo)識(shí)符

  • 標(biāo)識(shí)符就是用來(lái)命名的,給變量梳侨、函數(shù)蛉威、類命名。
num = 10
print(num)

四走哺,行與縮進(jìn)

  • python中對(duì)代碼里面的所有有嚴(yán)格要求蚯嫌。同級(jí)代碼前的縮進(jìn)(空格/tab)的個(gè)數(shù)必須一致
  • 行的規(guī)范:要求聲明函數(shù)和類的前后需要有兩個(gè)空行
  print('hello world')  # IndentationError

五,分段(行)顯示

  • 一句代碼很長(zhǎng)丙躏,需要多行來(lái)顯示的時(shí)候择示,可以在需要換行的位置加\

注意:加\的時(shí)候不能將一個(gè)數(shù)據(jù),一個(gè)變量名給拆開(kāi)

num = 2837487 + 34398748 + 384798578 +\
      37847578 + 347895789 + 457279 + \
      345234757 + 3549087 + 3457078

如果代碼是列表晒旅、元祖栅盲、字典、集合的字面量废恋,可以直接換行谈秫,不用加\

list1 = [
    12,
    23,
    4543,
    'ahgshgd',
    'sjhfjkh'
]

六,一行顯示多條語(yǔ)句

  • 一行顯示一條語(yǔ)句的時(shí)候拴签,后面不用加分號(hào)孝常。但是如果希望在一行顯示多條語(yǔ)句旗们,那么多條語(yǔ)句之間必須加分號(hào)
print('aaa');print('bbb')

七蚓哩,關(guān)鍵字(保留字)

  • python中已經(jīng)定義好的有特殊的功能或者特殊的意義的一些標(biāo)識(shí)符,就是python的關(guān)鍵字上渴。
    命名的時(shí)候不能使用關(guān)鍵字
import keyword   # 導(dǎo)入keyword模塊
print(keyword.kwlist)  # 打印python中所有的關(guān)鍵字

關(guān)鍵字:

'False', 'None', 'True', 'and', 'as', 'assert', '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'


八岸梨,print函數(shù)和input函數(shù)

print(內(nèi)容) - 在控制臺(tái)中打印內(nèi)容(內(nèi)容必須是python數(shù)據(jù))

print(內(nèi)容1, 內(nèi)容2, ..., 內(nèi)容n) - 在一行打印多個(gè)內(nèi)容,在控制臺(tái)顯示的時(shí)候多個(gè)內(nèi)容之間用空格隔開(kāi)
默認(rèn)情況下稠氮,一個(gè)print中的內(nèi)容占一行(以換行結(jié)束)曹阔。一個(gè)print中的多個(gè)內(nèi)容用空格隔開(kāi)

print(內(nèi)容,內(nèi)容1,...,內(nèi)容n, end='換行標(biāo)志')
print(內(nèi)容,內(nèi)容1隔披,...,內(nèi)容n, sep='分割標(biāo)志')

print('打印1')
print(100)
print('abc', 'bcd', 200)

print('打印1', end='==')
print(100)
print('abc', 'bcd', 200, sep='@')
print('abc', 'bcd', 200, sep='')

結(jié)果如下

image.png

input() - 從控制臺(tái)輸入一串內(nèi)容赃份,以回車結(jié)束。并且將內(nèi)容返回(以字符串的形式返回)

input('提示信息')
注意:程序執(zhí)行到input的時(shí)候,程序會(huì)停下來(lái)抓韩,直到輸入完成為止

print(input('請(qǐng)輸入:'))

結(jié)果如下

image.png

常用數(shù)據(jù)類型

  • python中常用的數(shù)據(jù)類型有:整型纠永、浮點(diǎn)型、布爾谒拴、字符串尝江、列表、字典英上、元祖炭序、集合、函數(shù)等....

1.常見(jiàn)數(shù)據(jù)類型的字面量(常量)

整型: 100, 23, -129 -- 所有的整數(shù)
浮點(diǎn)型: 12.3, 45.0, -0.1123 -- 所有的小數(shù)
布爾: True, False -- 只有兩個(gè)值
字符串: 'abc', "ahjs", '348sj', "上的+-" -- 由雙引號(hào)或者單引號(hào)括起來(lái)的內(nèi)容
列表: [12, 'abc', True]
元祖:(23, 89, 'asd')
字典:{'ab': 120, 18:'abc'}

2.數(shù)字相關(guān)類型

  • python中和數(shù)字相關(guān)的類型:整型苍日、浮點(diǎn)型惭聂、布爾、復(fù)數(shù)(虛數(shù))

a.整型(int):整數(shù)對(duì)應(yīng)的類型相恃,包含了所有的整數(shù)彼妻。

python3.x中整數(shù)對(duì)應(yīng)的類型只有一個(gè):int
python2.x中整數(shù)對(duì)應(yīng)的類型有:int和long
python中的整數(shù),除了可以用十進(jìn)制表示豆茫,還可以用二進(jìn)制侨歉、八進(jìn)制和十六進(jìn)制進(jìn)行表示

b.浮點(diǎn)型(float): 小數(shù)對(duì)應(yīng)的類型,包含了所有小數(shù)揩魂。

支持科學(xué)計(jì)數(shù)法

12.90

-12.03
2e4 # 20000.0

print(2e4)
print(3e-2)

c.布爾(bool): 只有True和False幽邓, 其中True表示真,False表示假。

True實(shí)質(zhì)就是數(shù)字1火脉,F(xiàn)alse實(shí)質(zhì)是數(shù)字0
True和False都是關(guān)鍵字

print(True, False)
print(1+True, 1+False)

結(jié)果如下

image.png

d.復(fù)數(shù)(complex): 所有的虛數(shù)對(duì)應(yīng)的類型

數(shù)字后面加j牵舵,來(lái)表示復(fù)數(shù)的虛部。實(shí)部就是普通數(shù)字
例如

10+1j
20-9j

print((10+1j)+(20-9j))

結(jié)果如下

image.png

3.type函數(shù)

  • type(數(shù)據(jù)) - 獲取數(shù)據(jù)對(duì)應(yīng)的類型
print(type(100))
print(type(10+2j))

結(jié)果如下

image.png

4.isinstance函數(shù)

  • isinstance(數(shù)據(jù),類型) - 判斷指定的數(shù)據(jù)是否是指定的類型倦挂,結(jié)果是布爾值
isinstance(100, float)   # 判斷100是否是float類型
print(isinstance(100, float))   # False
print(isinstance(100, int))     # True

5.類型的強(qiáng)制轉(zhuǎn)換

  • 類型名(數(shù)據(jù)) - 將指定數(shù)據(jù)轉(zhuǎn)換成指定類型

整型轉(zhuǎn)成浮點(diǎn)型: 在整數(shù)的后面加.0 float()
浮點(diǎn)型轉(zhuǎn)換成整型: 只保留小數(shù)點(diǎn)前面的整數(shù)部分 int()
其他類型轉(zhuǎn)布爾: 0轉(zhuǎn)換成False,其他的轉(zhuǎn)換成True bool()

注意:復(fù)數(shù)不能轉(zhuǎn)換成整型和浮點(diǎn)型畸颅,可以轉(zhuǎn)換成布爾類型(不管什么數(shù)據(jù)都可以轉(zhuǎn)換成布爾)

print(float(False))
print(int(False))
print(bool(10+10j))

結(jié)果如下

image.png

進(jìn)制

1.十進(jìn)制

基數(shù):0,1方援,2没炒,3,4犯戏,5送火,6,7先匪,8种吸,9
進(jìn)位:逢10進(jìn)1
位權(quán):123 = 1x10^2 + 2x10^1 + 30x10^0 (10^n)
表示: 所有的數(shù)字都是10進(jìn)制數(shù)(數(shù)字直接寫(xiě))


23
10
78

2.二進(jìn)制

基數(shù): 0,1
進(jìn)位: 逢2進(jìn)1
位權(quán): 1101(2) = 1x2^0 + 0x2^1 + 1x2^2 + 1x2^3 = 13 (2^n)
表示: 在二進(jìn)制數(shù)前加前綴:0b或者0B


0b10101
0B01010

3.八進(jìn)制

基數(shù):0呀非,1坚俗,2,3,4猖败,5形耗,6,7
進(jìn)位:逢8進(jìn)1
位權(quán): 123(8) = 3x8^0 + 2x8^1 + 1x8^2 = 83 (8^n)
表示:在八進(jìn)制數(shù)加前綴:0o或者0O


0o12
0O67

4.十六進(jìn)制

基數(shù):0辙浑,1激涤,2,3判呕,4倦踢,5,6侠草,7辱挥,8,9边涕,a(10)晤碘,b(11),c(12)功蜓,d(13)园爷,e(14),f(15)(字母大寫(xiě)和小寫(xiě)都可以)
進(jìn)位:逢16進(jìn)1
位權(quán): 123(16) = 3x16^0 + 2x16^1 + 1x16^2 (16^n)
表示: 在十六進(jìn)制數(shù)的前面加前綴:0x或者0X


0x12a
0Xffee
0X1023

num = 0x1010
print(num)

結(jié)果如下

image.png

5.其他進(jìn)制和十進(jìn)制之間的轉(zhuǎn)換

  • 其他進(jìn)制轉(zhuǎn)十進(jìn)制:每一位上的數(shù)*權(quán)值式撼,然后再求和

110(2) = 1x2^1 + 1x2^2 = 6(10)
110(8) = 1x8^1 + 1x8^2 = 72(10)
110(16) = 1x16^1 + 1x16^2 = 272(10)

  • 將十進(jìn)制轉(zhuǎn)換成其他進(jìn)制

100(10) = 1100100(2)
100(10) = 144(8)
100(10) = 64(16)
79(10) = 1001111(2)
79(10) = 117(8)
79(10) = 4f(16)

6. 二進(jìn)制和八進(jìn)制十六進(jìn)制的相互轉(zhuǎn)換

  • 二進(jìn)制轉(zhuǎn)八進(jìn)制:每3位的二進(jìn)制轉(zhuǎn)換成1位的八進(jìn)制

001 100 100 110 010 011 100(2) = 1446234(8)

  • 八進(jìn)制轉(zhuǎn)二進(jìn)制:每1位8進(jìn)制童社,轉(zhuǎn)換成3位的二進(jìn)制

6745(8) = 110 111 100 101(2)

  • 二進(jìn)制轉(zhuǎn)十六進(jìn)制:每4位的二進(jìn)制轉(zhuǎn)換成1位的十六進(jìn)制

0110 0100 1100 1001 1100(2) = 64c9c(16)

  • 十六進(jìn)制轉(zhuǎn)二進(jìn)制:每1位16進(jìn)制,轉(zhuǎn)換成4位的二進(jìn)制

6745(16) = 0110 0111 0100 0101(2)
a12(16) = 1010 0001 0010(2)

7.進(jìn)制轉(zhuǎn)換相應(yīng)的函數(shù) - 返回值是字符串

  • bin(數(shù)字) - 將數(shù)字轉(zhuǎn)換成2進(jìn)制
print(bin(100))
print(bin(0x6745))
print(bin(0o76))

結(jié)果如下

image.png
  • oct(數(shù)字) - 將數(shù)字轉(zhuǎn)換成8進(jìn)制
print(oct(100))
print(oct(0x1af))
print(oct(0b110001101))

結(jié)果如下

image.png
  • hex(數(shù)字) - 將數(shù)字轉(zhuǎn)換成16進(jìn)制
print(hex(100))
print(hex(0o67))
print(hex(0b11011101110))

結(jié)果如下

image.png
  • 所有進(jìn)制最后會(huì)自動(dòng)轉(zhuǎn)換成10進(jìn)制
num = 0xaf
print(num)

print(0b111 + 0b110)

結(jié)果如下

image.png

原碼著隆,反碼和補(bǔ)碼

1.計(jì)算機(jī)數(shù)據(jù)的存儲(chǔ)

  • 計(jì)算機(jī)能夠直接存儲(chǔ)的是數(shù)字扰楼,并且存的數(shù)字的補(bǔ)碼

2.計(jì)算機(jī)內(nèi)存大小單位

位(bit)
1字節(jié) = 8位
1KB = 1024字節(jié)
1MB = 1024KB
1GB = 1024MB
1TB = 1024GB

3.原碼:符號(hào)位+真值 (用最高位表示符號(hào)位,后面的其他為表示數(shù)字的二進(jìn)制)

  • 符號(hào)位: 0 -> 正, 1 -> 負(fù)數(shù)
  • 真值 :數(shù)字對(duì)應(yīng)的二進(jìn)制值

10(原碼) = 00001010
-10(原碼) = 10001010

4.反碼:

正數(shù)的反碼和原碼一樣美浦。負(fù)數(shù)的反碼是符號(hào)位不變弦赖,其他位上的數(shù)取反(0變成1,1變成0)
10(反碼) = 00001010
-10(反碼) = 11110101

5.補(bǔ)碼:

  • 正數(shù)的補(bǔ)碼和原碼一樣浦辨。負(fù)數(shù)的補(bǔ)碼就是反碼加1

10(補(bǔ)碼) = 00001010
-10(補(bǔ)碼) = 11110110

注意:數(shù)據(jù)存儲(chǔ)和運(yùn)算的時(shí)候采用的是補(bǔ)碼蹬竖。看結(jié)果看的是原碼

例如:
如果計(jì)算機(jī)存儲(chǔ)的是原碼:
3:0011
2:0010
3+2 = 0101 = 5

3-2 = 3+(-2) = 1101 = -5
3: 0011
-2:1010

補(bǔ)碼:
3(補(bǔ)) = 0011
-2(補(bǔ)) = 1101(反) = 1110(補(bǔ))
0011(補(bǔ))+1110(補(bǔ)) = 0001(補(bǔ)) = 0001(原) = 1

2-3
2:0010(原)= 0010(補(bǔ))
-3:1011(原) = 1100(反)= 1101(補(bǔ)碼)
0010(補(bǔ))+ 1101(補(bǔ)碼) = 1111(補(bǔ)碼)= 1110(反) = 1001 = -1


最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末荤牍,一起剝皮案震驚了整個(gè)濱河市案腺,隨后出現(xiàn)的幾起案子庆冕,更是在濱河造成了極大的恐慌康吵,老刑警劉巖,帶你破解...
    沈念sama閱讀 211,376評(píng)論 6 491
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件访递,死亡現(xiàn)場(chǎng)離奇詭異晦嵌,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,126評(píng)論 2 385
  • 文/潘曉璐 我一進(jìn)店門惭载,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)旱函,“玉大人,你說(shuō)我怎么就攤上這事描滔“舴粒” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 156,966評(píng)論 0 347
  • 文/不壞的土叔 我叫張陵含长,是天一觀的道長(zhǎng)券腔。 經(jīng)常有香客問(wèn)我,道長(zhǎng)拘泞,這世上最難降的妖魔是什么纷纫? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 56,432評(píng)論 1 283
  • 正文 為了忘掉前任,我火速辦了婚禮陪腌,結(jié)果婚禮上辱魁,老公的妹妹穿的比我還像新娘。我一直安慰自己诗鸭,他們只是感情好染簇,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,519評(píng)論 6 385
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著强岸,像睡著了一般剖笙。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上请唱,一...
    開(kāi)封第一講書(shū)人閱讀 49,792評(píng)論 1 290
  • 那天弥咪,我揣著相機(jī)與錄音,去河邊找鬼十绑。 笑死聚至,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的本橙。 我是一名探鬼主播扳躬,決...
    沈念sama閱讀 38,933評(píng)論 3 406
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼甚亭!你這毒婦竟也來(lái)了贷币?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 37,701評(píng)論 0 266
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤亏狰,失蹤者是張志新(化名)和其女友劉穎役纹,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體暇唾,經(jīng)...
    沈念sama閱讀 44,143評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡促脉,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,488評(píng)論 2 327
  • 正文 我和宋清朗相戀三年辰斋,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片瘸味。...
    茶點(diǎn)故事閱讀 38,626評(píng)論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡宫仗,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出旁仿,到底是詐尸還是另有隱情藕夫,我是刑警寧澤,帶...
    沈念sama閱讀 34,292評(píng)論 4 329
  • 正文 年R本政府宣布枯冈,位于F島的核電站汁胆,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏霜幼。R本人自食惡果不足惜嫩码,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,896評(píng)論 3 313
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望罪既。 院中可真熱鬧铸题,春花似錦、人聲如沸琢感。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 30,742評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)驹针。三九已至烘挫,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間柬甥,已是汗流浹背饮六。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 31,977評(píng)論 1 265
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留苛蒲,地道東北人卤橄。 一個(gè)月前我還...
    沈念sama閱讀 46,324評(píng)論 2 360
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像臂外,于是被迫代替她去往敵國(guó)和親窟扑。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,494評(píng)論 2 348

推薦閱讀更多精彩內(nèi)容