day2 基操、數據類型、進制、原碼反碼補碼等

一 開場白

hello word

python
print('hello word')

二 部分快捷鍵

注釋的快捷鍵 ctrl+? 添加或取消一行注釋
ctrl+s 保存
ctrl+c ctrl+v ctrl+n(跳轉到類)
ctrl+f(搜索)
ctrl+r(替換)
ctrl+z
ctrl+shift+z(反撤銷)
ctrl+a 全選
ctrl+x 剪切
選擇有效部分 配合使用shift
tab 補充代碼

三 基礎語法及基操

1.注釋:

程序中的說明文字,只是程序的說明 不會被執(zhí)行。
單行注釋 在文字的前面加 “ #” 號。
多行注釋 使用雙引號 " " or ' '。通常使用 “ ”。

2.標識符等基操:

  • 專門用來命名 變量、函數、類等命名。
  • 命名: 字母、數字、下劃線組成 且數字不能開頭
    注意:python3.X標識符中可以包含非ASCII碼(包含中文、日語、拉丁等 實際開發(fā)中不能用)
  • 保留字:python 已經定義好的有特殊功能或者特殊意義的標識符 命名時不能使用
    關鍵字:'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'
python
import keyword  #導入關鍵字模塊
print(keyword.kwlist,end="\t")  #打印所有的關鍵字

3.行 與 縮進 基操

python對代碼有嚴格要求
縮進:同一級代碼(空格或者tab制表符)縮進必須一致 (: 后需縮進)
行的規(guī)范:要求聲明函數和類的前后需要兩個空行

python
a =int( input("隨便輸入:"))
b =int( input("隨便輸入:"))
if a >b:
    pass

4.分段顯示:

多行顯示 可以再換行位置加\ 加 \ 不能將變量名或者數據拆開
如果代碼是列表元組字典集合的字面量可以直接換行

python
list = [1,2,3,
        "aa"]
a = 1+2+3+\
    5+6+7+8+\
    3

5.print相關操作:

  • 一行顯示多條代碼 多條語句必須加 ; 號
python
print("aa");print('bb')

print(內容) 在控制臺中打印內容 內容必須是Python支持的數據;字符串加“”‘’,數字可以直接寫
print(內容1,內容2,...)一行打印多個內容 控制臺顯示時 用 隔開
默認情況下 一個print輸出占一行(以換行結束) 一個print中的多個內容用空格隔開
print(內容1,內容2,end = '==='換行,sep = ''分割)

python
print("a","c","d",end='===')
print("lorry")
print("lorrybz")
print("a","c","d",sep='@')
print("a","c","d",sep='')

5.input、type、isinstance函數相關操作:

input(‘your name:’) 控制臺輸入內容以回車結束,然后返回
返回內容是字符串
執(zhí)行到input時 程序會停下 直到輸入完成時

python
yonghuming = input("your name")
key_word = input("your passw:")

type:獲取數據對應類型

python
print(type(100))
print(type(a))

isinstance函數:isinstance(數據,類型)-判斷是否是指定的類型,結果是布爾值。

python
print(isinstance(a,complex))  # True
print(isinstance(a,str))    #False

四 常用數據類型

Python中常用的數據類型 整形、浮點型、布爾、字符串、元組、列表、字典、集合、函數等。

1.常見數據類型的字面量(常量)

整形:整數:100,200
浮點型:有小點數的
布爾:true false
字符串: “ ” ' ' str();
列表:[1,2,'aa']
元組:(23,98,"awm")
字典:{"平板":230,"mate20":450}

2.數字相關的類型

1.整型(int):整數對應的類型,包含了所有的整數
py3.x整型對應的類型只有 int
py2.x 有l(wèi)ong 和 int
python中的整數除了可以用十進制表示 還可以用二進制、八進制、16進制
2.浮點型(float):小數對應的類型,正的和負的
支持科學計數法 :2e4 210^4 2e-2 210^-2

python
print(2e4)

3.布爾(bool)只有True(真)實質是1 ;和False(假)實質是0 都是關鍵字

print(1+True,1+False)

4.復數(complex) 表示所有的虛數對應的類型
a+bj j:代表虛部 實部就是數字

python
a = 10+10j
b = 5-5j
print(a+b)

5.類型的轉換
類型名() 將數據轉換成指定的類型
浮點型轉換成整型:直接取整 int()
整型轉換成浮點型:屁股直接加 .0 float()
其他類型轉換成布爾:bool() 0轉換成False 其余的全是True
復數不能轉換成整型和浮點型 可以轉換成布爾類型
任何數據都可以轉換成布爾

python
print(int(12.5))
print(bool(12.5),bool(0),bool(-1),bool(5+10j))
print(int(True),float(True))
print(complex(1.0002),complex(True),complex(100))

五 進制問題

1.十進制

基數:0 1 2 3 4 5 6 7 8 9
進位:逢十進一
位權:123 = 110^2+2101+3*100 (10^n n = 0 1 2 3 4 )
表示方式:所有的數字輸入都是十進制

2.二進制

基數:0 1
進位:逢二進一
位權:10011 = 12^0+121+0*22+02^3+12^4 = 19 (2^n n = 0 1 2 3 4 )
表示方式:在二進制數前加前綴:0b 0B
0b101010
0B101010

print(0b10011)

3.八進制

基數:0 1 2 3 4 5 6 7
進位:逢八進一
舉例: 67 123456452
位權:123 = 38^0+281+1*82 = 83 (8^n n = 0 1 2 3 4 )
表示方式:八進制數前加0o 0O
0o12356
0O123456

print(0o123)

4.十六進制

基數:0 1 2 3 4 5 6 7 8 9
a(10) b(11) c(12) d(13) e(14) f(15)(大寫也可以)
進位:逢十六進一
10 表示16
12a abc
位權:123 = 316^0+2161+1*162 = 291 (16^n n = 0 1 2 3 4 )
表示方式:在十六進制數前加0x 0X
0x12abcfd
0X12abcfd

print(0x123)

5.其他進制和十進制之間的轉換

1.其他進制轉十進制:每一位上的數*權值,然后再求和

110(2) = 0*2^0+1*2^1+1*2^2  = 6
110(8) = 0*8^0+1*8^1+8*2^2  = 72
110(16) = 0*16^0+1*16^1+16*2^2  = 272

6.將十進制轉成其他進制:

短除法
100(2)=1100100
100(8)=144
100(16)=64
79(2) = 1001111
79(8)= 117
79(16) =4f

7.二進制轉成八進制:

二進制轉八進制:每3位的二進制轉成1位的八進制
001 100 100 110 010 011 100 :位數不足用0補位。
1446234
八進制轉二進制:每1位的八進制轉成3位的二進制
6745(8) 轉成二進制 110 111 100 101

8.二進制轉成十六進制:

每4位二進制轉成1位的十六進制
0110 0100 1100 1001 1100
64c9c
十六進制轉成二進制:每1位十六進制轉成4位的4進制
6745 轉成二進制 0110 0111 0100 0101
a12 八進制轉成二進制 1010 0001 0010
八進制和十六進制之間的轉換。先轉換成二進制
八進制和十六進制之間的轉換。先轉換成二進制

9.進制轉換相應的函數

返回值是字符串

  • bin(數字) 將數字轉換成二進制
print(bin(100))
print(bin(0xacd))
print(bin(0o6547))
  • oct(數字) 將數字轉換成八進制
print(oct(100))
print(oct(0xacd))
print(oct(0b1000100))
  • hex(數字) 將數字轉換成十六進制
print(hex(100))
print(hex(0o672))
(hex(0b1000100))

所有進制最終會自動轉換成十進制

a = 0xaf
print(a)

六 原碼、反碼、補碼問題

常識了解1:計算機數字的存儲

計算機能夠直接存儲的是數字 并且存的是數字的補碼

常識了解2:內存大小

位(bit)
1字節(jié) = 8位
1kb = 1024字節(jié)
1mb = 1024kb
1gb = 1024mb
1tb = 1024gb

2:原碼:

符號位+真值(用最高位表示符號位,后面的其他為表示數字的二進制)

  • 符號位:0 -> 正,1 -> 負數
  • 真值:數字對應的二進制值
    舉例:
    10(源碼) = 0 0001010
    -10(源碼) = 1 0001010

3:反碼:

正數的反碼和原碼一樣
負數的反碼是符號位不變,其余位上的數取反(0變1,1變0)
10(的反碼) = 00001010
-10(的反碼) = 1 1110101

4:補碼:

正數的補碼和原碼一樣
負數的補碼是 反碼+1
10(的補碼) = 00001010
-10(的補碼) = 1 1110110
注意:數據存儲和運算的時候采用的是補碼,看結果看的是原碼大小。

舉例子:
原碼,加法。
3的二進制:0011
2的二進制:0010
3+2= 0101 = 5

減法:3-2
補碼:
3(補碼)= 0011
-2(補碼)= 1101(反碼) = 1110(補碼)
0011(補碼) + 1110(補碼)= 0001 = 0001 =1

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

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

相關閱讀更多精彩內容

  • 一.Python程序 1.快捷鍵 ctrl + s - 保存 ctrl + / - 添加或取消一行注釋 ctrl ...
    熙包包閱讀 459評論 0 0
  • 1.認識Python 編譯性語言:C,Java等 特點:需要把代碼轉化為可執(zhí)行文件,再運行結果。運行速度快。 解釋...
    L丶Y1122閱讀 346評論 2 2
  • 1.快捷鍵 ctrl+/ 添加和取消注釋ctrl+s 保存ctrl+c 復制ctrl +v 粘貼 ctrl + n...
    年華盡耗_c24e閱讀 315評論 0 0
  • 今天學習了主要5個內容。 1. 快捷鍵的使用。 ctrl + / - 添加或者取消一行注釋ctrl + s -...
    學python的鐵頭娃閱讀 527評論 0 0
  • 1.快捷鍵的了解 ctrl + / - 添加或者取消一行注釋ctrl + s - 保存ctrl + c - ...
    9527神經閱讀 290評論 0 0

友情鏈接更多精彩內容