一坚冀、計(jì)算機(jī)基礎(chǔ)
1.1谆刨、進(jìn)制
- 計(jì)算機(jī)中的數(shù)字有四種存在形式,分別是:十進(jìn)制纹坐、二進(jìn)制枝冀、八進(jìn)制和十六進(jìn)制
1.1.1、十進(jìn)制
1.基數(shù):0-9
2.進(jìn)位:逢10進(jìn)1
3.位權(quán):例:123 = 3*10^0 + 2*10^1 +1*10^2耘子,其中10^x就是這個(gè)十進(jìn)制數(shù)的權(quán)位
4.在Python中的表示方式:十進(jìn)制數(shù)在Python中可直接書(shū)寫(xiě)
5.將其他進(jìn)制的數(shù)字轉(zhuǎn)換為十進(jìn)制的方法:直接用輸出函數(shù):print()
1.1.2果漾、二進(jìn)制
1.基數(shù):0-1
2.進(jìn)位:逢2進(jìn)1
3.位權(quán):例:1001011 = 1*2^0 + 1*2^1 + 0*2^2 + 1*2^3 + 0*2^4 + 0*2^5 + 1*2^6,其中2^x就是該數(shù)的權(quán)位
4.在Python中的表示方式:在二進(jìn)制前加 0b / 0B 谷誓;例:0b1001/0B1001
5.將其他進(jìn)制的數(shù)字轉(zhuǎn)換為二進(jìn)制的方法:bin(其他進(jìn)制的數(shù)值)
例:
1.1.3绒障、八進(jìn)制
1.基數(shù):0-7
2.進(jìn)位:逢8進(jìn)1
3.位權(quán):例:167 = 7*8^0 + 6*8^1 + 1*8^2 ,其中8^x就是該數(shù)的權(quán)位
4.在Python中的表示方式:在八進(jìn)制前加 0o / 0O 捍歪;例:0o123/0O123
5.將其他進(jìn)制的數(shù)字轉(zhuǎn)換為八進(jìn)制的方法:oct(其他進(jìn)制的數(shù)值)
例:
1.1.4户辱、十六進(jìn)制
1.基數(shù):0鸵钝,1,2庐镐,3恩商,4,5必逆,6痕届,7,8末患,9,a(10)锤窑,b(11)璧针,c(12),d(13)渊啰,e(14)探橱,f(15)
2.進(jìn)位:逢16進(jìn)1
3.位權(quán):例:ef3d = d*16^0 + 3*16^1 + f*16^2 + e*16^3,其中16^x就是該數(shù)的權(quán)位
4.在Python中的表示方式:在十六進(jìn)制前加 0x / 0X 绘证;例:0xef3d / 0Xef3d
5.將其他進(jìn)制的數(shù)字轉(zhuǎn)換為十六進(jìn)制的方法:hex(其他進(jìn)制的數(shù)值)
例
1.1.5隧膏、進(jìn)制之間的手動(dòng)轉(zhuǎn)換
1、十進(jìn)制和其他進(jìn)制
①:十進(jìn)制轉(zhuǎn)其他進(jìn)制
輾轉(zhuǎn)取余法:不斷除2/8/16取余嚷那,然后從下往上將余數(shù)寫(xiě)出來(lái)胞枕。
②:其他進(jìn)制轉(zhuǎn)換成十進(jìn)制
基數(shù)與權(quán)位的乘積求和。
2魏宽、二進(jìn)制和其他進(jìn)制
①:二轉(zhuǎn)八:將二進(jìn)制數(shù)從低位到高位每三位分開(kāi)腐泻,將每三位轉(zhuǎn)換成十進(jìn)制,最后得到的既是一個(gè)八進(jìn)制數(shù)队询;
例:0b1 011 011 -> 0o133
②:二轉(zhuǎn)十六:將二進(jìn)制數(shù)從低位到高位每四位分開(kāi)派桩,將每四位轉(zhuǎn)換成十進(jìn)制,如果數(shù)值大于10蚌斩,則用a-f代替相應(yīng)數(shù)值铆惑,最后得到的既是一個(gè)十六進(jìn)制數(shù);
例:0b101 1011 -> 0x5b
3送膳、八轉(zhuǎn)二员魏、十六轉(zhuǎn)二
①:八轉(zhuǎn)二:將每一位八進(jìn)制的數(shù)轉(zhuǎn)換為三位的二進(jìn)制數(shù),最后得到相應(yīng)的二進(jìn)制數(shù)肠缨;
②:十六轉(zhuǎn)二:將每一位十六進(jìn)制的數(shù)轉(zhuǎn)換為四位的二進(jìn)制數(shù)逆趋,最后得到相應(yīng)的二進(jìn)制數(shù)。
1.2晒奕、計(jì)算機(jī)存儲(chǔ)
1.2.1闻书、存儲(chǔ)單位
- 在計(jì)算機(jī)內(nèi)最小的存儲(chǔ)單位是 : bit(位)
- 在計(jì)算機(jī)內(nèi)使用內(nèi)存的最小單位是:bytes(字節(jié))
- 其中:1bytes = 8bit
- 其他單位換算:
1KB = 1024 bytes
1MB = 1024KB
1GB = 1024MB
1TB = 1024GB
1PB = 1024TB
1.2.2名斟、計(jì)算機(jī)存儲(chǔ)原理
- 在計(jì)算機(jī)中,數(shù)據(jù)有原碼魄眉,反碼砰盐,補(bǔ)碼三種形態(tài)。而數(shù)據(jù)的存儲(chǔ)都是以補(bǔ)碼的方式進(jìn)行存儲(chǔ)的坑律,原因是計(jì)算機(jī)只有加法器岩梳,負(fù)數(shù)在進(jìn)行運(yùn)算時(shí)不能得出正確的結(jié)果,所以只能通過(guò)存儲(chǔ)補(bǔ)碼的方式解決這個(gè)問(wèn)題晃择。
1.2.2.1冀值、原碼
- 原碼 = 符號(hào)位 + 數(shù)字對(duì)應(yīng)的二進(jìn)制
- 符號(hào)位(只有一位):0代表正數(shù),1代表負(fù)數(shù)
例:
12的二進(jìn)制:1100 -> 00001100(原)宫屠,其中最高位的0是符號(hào)位列疗,代表正數(shù)。
-12的原碼是:10001100浪蹂,其中最高位的1是符號(hào)位抵栈,代表負(fù)數(shù)。
注:由于計(jì)算機(jī)中使用內(nèi)存時(shí)調(diào)用的最小存儲(chǔ)單位是一個(gè)字節(jié)坤次,8位古劲,所以原碼、反碼和補(bǔ)碼的位數(shù)都是8的倍數(shù)缰猴。
1.2.2.2产艾、反碼
- 原碼的符號(hào)位不變,其余位全部取反滑绒,其結(jié)果就是原碼的反碼
例:-12 -> 10001100(原碼) -> 11110011(反碼)
1.2.2.3胰舆、補(bǔ)碼
- 補(bǔ)碼 = 反碼 + 1
例:-12 -> 10001100(原碼) -> 11110011(反碼) -> 11110100(補(bǔ)碼)
注:正數(shù)的原碼、反碼和補(bǔ)碼相同
二蹬挤、Python基礎(chǔ)
2.1缚窿、Python編程中常用的快捷鍵
序號(hào) | 快捷鍵 | 功能 |
---|---|---|
1 | Ctrl+/ | 添加注釋或取消注釋 |
2 | Ctrl+S | 保存 |
3 | Ctrl+C | 復(fù)制 |
4 | Ctrl+V | 粘貼 |
5 | Ctrl+Z | 撤銷(xiāo) |
6 | Ctrl+X | 剪切 |
7 | Ctrl+F | 查找 |
8 | Ctrl+Shift+Z | 反撤銷(xiāo) |
9 | Ctrl+R | 替換 |
10 | Ctrl+D | 復(fù)制整行到下一行 |
11 | Ctrl+A | 全選 |
其他快捷操作:
①:選區(qū)多行代碼:先用鼠標(biāo)點(diǎn)擊選區(qū)開(kāi)頭,找到選區(qū)結(jié)尾焰扳,按住Shift鍵再點(diǎn)擊選區(qū)結(jié)尾倦零;
②:同時(shí)操作多行代碼:按住Alt鍵,用鼠標(biāo)點(diǎn)擊多行代碼需要操作的位置即可吨悍。
2.2扫茅、Python基礎(chǔ)語(yǔ)法
(一)、注釋
- 注釋是在編程中不參與編譯執(zhí)行的文字育瓜,用來(lái)對(duì)代碼進(jìn)行解釋說(shuō)明
1.單行整行注釋?zhuān)涸谠撔写a的開(kāi)頭加 # 即可
2.單行部分注釋?zhuān)涸谛枰⑨尣糠值拇a前加 # 即可
3.多行注釋?zhuān)涸诙嘈凶⑨屒昂蠹尤齻€(gè)單引號(hào)或者三個(gè)雙引號(hào)即可(注:?jiǎn)我?hào)或雙引號(hào)都是輸入法為英文狀態(tài)時(shí)的符號(hào))
(二)葫隙、語(yǔ)句
- 一條語(yǔ)句占一行,一條語(yǔ)句結(jié)束后可以不加分號(hào)躏仇,如果多條語(yǔ)句在同一行恋脚,則語(yǔ)句之間必須加分號(hào)
例:
print('helllo world')
print('你好')
print('helllo world');print('你好')
(三)腺办、縮進(jìn)
- 一條語(yǔ)句開(kāi)頭不能隨便縮進(jìn)或空格,需要縮進(jìn)的地方則必須縮進(jìn)
小提示:IndentationError >>> 縮進(jìn)錯(cuò)誤
(四)糟描、標(biāo)識(shí)符
- 標(biāo)識(shí)符是專(zhuān)門(mén)用來(lái)給函數(shù)怀喉、類(lèi)和變量命名的
- 標(biāo)識(shí)符的基本要求:
1、標(biāo)識(shí)符由數(shù)字船响、字母和下劃線組成
2躬拢、數(shù)字不能開(kāi)頭
(五)、關(guān)鍵字
- 有特殊功能或者特殊意義的標(biāo)識(shí)符就是關(guān)鍵字见间,又叫保留字
- 常見(jiàn)關(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']
(六)聊闯、常用數(shù)據(jù)
1.數(shù)字?jǐn)?shù)據(jù):用來(lái)表示大小,在程序中直接寫(xiě)
例:
print(100)
print(2+5j)
2.文本數(shù)據(jù):文本信息對(duì)應(yīng)的數(shù)據(jù)米诉,在程序中需要用雙引號(hào)或者單引號(hào)引起來(lái)
?電話號(hào)馅袁,身份證號(hào),門(mén)牌號(hào)等是文本信息
例:
print('木_Python')
print('13888888888')
3.布爾數(shù)據(jù):用True表示真/肯定荒辕,用False表示假/否定,程序中只有True和False兩種
所有類(lèi)型的數(shù)據(jù)都能轉(zhuǎn)換成布爾值犹褒,所有為數(shù)字如果為0抵窒,所有序列如果為空則都會(huì)轉(zhuǎn)換成False,其他都為T(mén)rue
print(True)
print(False)
print(bool(0), bool(0.0), bool(''), bool([]), bool(()), bool(None))
list1 = [1,2]
if list1:
print('===')
elif not list1:
print('+++')
(七)叠骑、常見(jiàn)數(shù)據(jù)類(lèi)型
1.數(shù)字類(lèi)型:整型(int)李皇、浮點(diǎn)型(float)、復(fù)數(shù)
2.文本類(lèi)型:字符串(str)
3.布爾類(lèi)型(bool):True和False
4.其他:列表(list)宙枷、字典(dict)掉房、元組(tuple)、集合(set)慰丛、迭代器(iter)卓囚、生成器、函數(shù)(function)
?type(數(shù)據(jù)) - 獲取數(shù)據(jù)類(lèi)型
print(type(100))
(八)诅病、輸入和輸出
1.輸出:print
print(數(shù)據(jù)) - 在控制臺(tái)直接打印數(shù)據(jù)
print(10)
print('aed')
print(表達(dá)式) - 打印表達(dá)式的結(jié)果
print(10+10)
print(表達(dá)式1哪亿,表達(dá)式2,表達(dá)式3贤笆,...) - 在一行打印多個(gè)表達(dá)式的結(jié)果
print('你好',123,'1+2')
1.定制換行:
print('hello world',end= '你好,世界')
print('啥')
2.定制分隔:
print(1,2,3,4,sep='+')
2.輸入:input
input(提示輸入信息)
age = input('請(qǐng)輸入年齡:')
print('輸入的年紀(jì)是:',age,type(age))