2018-09-27 Day3 進(jìn)制和字符串

進(jìn)制

計(jì)算機(jī)在存儲(chǔ)數(shù)字的時(shí)候都是以二進(jìn)制的形式去存的
十進(jìn)制晰搀、十六進(jìn)制呀舔、八進(jìn)制场斑、二進(jìn)制

1.進(jìn)制之間的轉(zhuǎn)換

a.其他進(jìn)制轉(zhuǎn)換成10進(jìn)制:每一位上的數(shù)乘以進(jìn)制幕次數(shù)糠睡,然后求和

b.十進(jìn)制轉(zhuǎn)其他進(jìn)制:輾轉(zhuǎn)取余法

123:(2)0 0111 1011 60:(2)111100
123:(8)173 173
123:(16)7B 7b

c.二進(jìn)制轉(zhuǎn)8進(jìn)制: 每3位二進(jìn)制轉(zhuǎn)換成1位;

八轉(zhuǎn)二: 一位8進(jìn)制轉(zhuǎn)換成3位的二進(jìn)制
(8)671 --> (2)110 111 001

d.二進(jìn)制轉(zhuǎn)16進(jìn)制: 每4位二進(jìn)制轉(zhuǎn)換成1位

十六轉(zhuǎn)二: 一位的16進(jìn)制轉(zhuǎn)換成4位的二進(jìn)制
(16)67 --> (2)0110 0111

2.python對(duì)進(jìn)制的支持

python支持通過(guò)二進(jìn)制挽鞠、八進(jìn)制、十進(jìn)制和十六進(jìn)制的形式來(lái)直接表示整數(shù)

a.十進(jìn)制:直接寫的數(shù)字的值都是十進(jìn)制的數(shù)

b.二進(jìn)制:需要加前綴 -> 0b

number = 0b1010
number2 = 0b1110 + 10
print(number2)

c.八進(jìn)制:需要加前綴 -> 0o/0O

0o67

d.十六進(jìn)制:需要加前綴 -> 0x/0X

number = 0Xfa5
print(number)
print(type(0xfa))

e.進(jìn)制的轉(zhuǎn)換(結(jié)果是字符串)

bin(整數(shù)) --> 將括號(hào)中的整數(shù),轉(zhuǎn)換成二進(jìn)制形式

print(bin(10), bin(0o56), bin(0xaf))
print(type(bin(10)))

oct(整數(shù)) --> 將括號(hào)中的整數(shù)信认,轉(zhuǎn)換成八進(jìn)制形式

print(oct(10), oct(0b110110), oct(0xaf))

hex(整數(shù)) --> 將括號(hào)中的整數(shù)材义,轉(zhuǎn)換成十六進(jìn)制形式

print(hex(10), hex(0b110110), hex(0o56))

2.補(bǔ)碼和反碼

計(jì)算機(jī)在存數(shù)字的時(shí)候,存的是數(shù)字的二進(jìn)制的補(bǔ)碼
計(jì)算機(jī)內(nèi)存的最小單位是位:1位只能存儲(chǔ)兩個(gè)狀態(tài)
8位 = 1字節(jié)

a.原碼:整數(shù)數(shù)字的二進(jìn)制形式

十進(jìn)制的10的原碼就是:1010
最高位是符號(hào)位嫁赏,如果正數(shù)符號(hào)位為0其掂,負(fù)數(shù)符號(hào)位為1
10的原碼 00000000 00001010
-10的原碼 10000000 00001010

b.反碼

正數(shù)的反碼是它的原碼
負(fù)數(shù)的反碼就是這個(gè)數(shù)的原碼的符號(hào)位不變,然后其他位置上的數(shù)取反(0->1,1->0)
-10 -> (原碼)10000000 00001010 ->(反碼)11111111 11110101

c.補(bǔ)碼

正數(shù)的補(bǔ)碼就是它的原碼
負(fù)數(shù)的補(bǔ)碼是它的反碼加1
-10 -> (反碼)11111111 11110101 -> (補(bǔ)碼)1111111 11110110
總結(jié):正的反碼和補(bǔ)碼都是原碼;負(fù)數(shù)的補(bǔ)碼是反碼加1潦蝇,反碼是原碼符號(hào)位不變款熬,其他位取反
為什么計(jì)算機(jī)存儲(chǔ)數(shù)據(jù)的時(shí)候存補(bǔ)碼?:因?yàn)橛?jì)算機(jī)中只有加法器攘乒,只能進(jìn)行加操作贤牛。
存原碼對(duì)負(fù)數(shù)進(jìn)行加操作的時(shí)候有問(wèn)題

3.位運(yùn)算

計(jì)算存數(shù)字存補(bǔ)碼,計(jì)算的時(shí)候也是補(bǔ)碼则酝,最后結(jié)果看的時(shí)候看原碼
位運(yùn)算符:&(按位與)殉簸,|(按位或), ^(異或), ~(取反), >>(右移), <<(左移)

1.&(按位與)

數(shù)字1 & 數(shù)字2 :兩個(gè)都為1結(jié)果才是1沽讹,否則為0
作用:讓指定位上數(shù)置零般卑,或者保留某一位上的值

2.|(按位或)

數(shù)字1 | 數(shù)字2: 只要有一個(gè)為1,結(jié)果就是1爽雄;兩個(gè)都為蝠检,結(jié)果才是0

3.^(異或)

數(shù)字1 ^ 數(shù)字2: 不同為1,相同為0

4.~(取反)

~數(shù)字: 將每一位取反

5.左移(重點(diǎn)掌握)

數(shù)字 << 位數(shù): 將補(bǔ)碼向左移動(dòng)指定的位數(shù)盲链,符號(hào)位不變蝇率,在最后面補(bǔ)指定個(gè)數(shù)的0
規(guī)律(正數(shù)和負(fù)數(shù)都實(shí)用):m << n == m * (2^n)
num * 2 == num << 1 num * 4 == num << 2

6.右移

數(shù)字 >> 位數(shù): 將補(bǔ)碼向右移動(dòng)指定的位數(shù)迟杂,符號(hào)位不變刽沾,在符號(hào)位的后面補(bǔ)指定個(gè)數(shù)的0(正)或者1(負(fù))
規(guī)律(只適用于正數(shù)):m >> n == m // (2^n)

4.字符串

1.什么是字符串

python中通過(guò)單引號(hào)或者上引號(hào)引起來(lái)的字符集就是字符串
字符串中引號(hào)中的字符集,就是又各種不同的字符來(lái)組成的排拷。

2.Unicode編碼

python中字符串中字符采用的是Unicode編碼
Unicode編碼:是通過(guò)兩個(gè)字節(jié)來(lái)對(duì)一個(gè)字符進(jìn)行編碼(0~ 2^16-1)侧漓。它幾乎包含了世界上所有的符號(hào)

3.ASCII編碼:是通過(guò)一個(gè)字節(jié)來(lái)對(duì)一個(gè)字符進(jìn)行編碼

Unicode編碼中包含了ASCII碼表

chr(數(shù)字): 獲取數(shù)字在Unicode編碼表中對(duì)應(yīng)的字符,返回的是只有一個(gè)字符的字符串

print(chr(97))
print(chr(0x1813))
print(chr(0x1b02))

ord(字符): 獲取字符對(duì)應(yīng)的Unicode碼

print(ord('余'), ord('婷'))
print(ord('??'))
print(0xffff)

可以直接在字符串中寫字符對(duì)應(yīng)的編碼值,格式:\u四位的十六進(jìn)制

str1 = 'ah\u4e00\u4e01jhuu'
print(str1)

3.轉(zhuǎn)義字符(適用于所有語(yǔ)言)

一些特能和具有特殊意義的字符监氢,直接放在字符串的引號(hào)中無(wú)效布蔗,需要通過(guò)\來(lái)轉(zhuǎn)義
\n ---> 換行
' ----> '
\t ----> 制表符
\ ---->
" ----> "

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市浪腐,隨后出現(xiàn)的幾起案子纵揍,更是在濱河造成了極大的恐慌,老刑警劉巖议街,帶你破解...
    沈念sama閱讀 221,430評(píng)論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件泽谨,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)吧雹,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,406評(píng)論 3 398
  • 文/潘曉璐 我一進(jìn)店門骨杂,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人雄卷,你說(shuō)我怎么就攤上這事搓蚪。” “怎么了丁鹉?”我有些...
    開封第一講書人閱讀 167,834評(píng)論 0 360
  • 文/不壞的土叔 我叫張陵妒潭,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我揣钦,道長(zhǎng)杜耙,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 59,543評(píng)論 1 296
  • 正文 為了忘掉前任拂盯,我火速辦了婚禮佑女,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘谈竿。我一直安慰自己团驱,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,547評(píng)論 6 397
  • 文/花漫 我一把揭開白布空凸。 她就那樣靜靜地躺著嚎花,像睡著了一般。 火紅的嫁衣襯著肌膚如雪呀洲。 梳的紋絲不亂的頭發(fā)上紊选,一...
    開封第一講書人閱讀 52,196評(píng)論 1 308
  • 那天,我揣著相機(jī)與錄音道逗,去河邊找鬼兵罢。 笑死,一個(gè)胖子當(dāng)著我的面吹牛滓窍,可吹牛的內(nèi)容都是我干的卖词。 我是一名探鬼主播,決...
    沈念sama閱讀 40,776評(píng)論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼吏夯,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼此蜈!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起噪生,我...
    開封第一講書人閱讀 39,671評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤裆赵,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后跺嗽,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體战授,經(jīng)...
    沈念sama閱讀 46,221評(píng)論 1 320
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡舔庶,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,303評(píng)論 3 340
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了陈醒。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片惕橙。...
    茶點(diǎn)故事閱讀 40,444評(píng)論 1 352
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖钉跷,靈堂內(nèi)的尸體忽然破棺而出弥鹦,到底是詐尸還是另有隱情,我是刑警寧澤爷辙,帶...
    沈念sama閱讀 36,134評(píng)論 5 350
  • 正文 年R本政府宣布彬坏,位于F島的核電站,受9級(jí)特大地震影響膝晾,放射性物質(zhì)發(fā)生泄漏栓始。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,810評(píng)論 3 333
  • 文/蒙蒙 一血当、第九天 我趴在偏房一處隱蔽的房頂上張望幻赚。 院中可真熱鬧,春花似錦臊旭、人聲如沸落恼。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,285評(píng)論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)佳谦。三九已至,卻和暖如春滋戳,著一層夾襖步出監(jiān)牢的瞬間钻蔑,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,399評(píng)論 1 272
  • 我被黑心中介騙來(lái)泰國(guó)打工奸鸯, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留咪笑,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,837評(píng)論 3 376
  • 正文 我出身青樓府喳,卻偏偏與公主長(zhǎng)得像蒲肋,于是被迫代替她去往敵國(guó)和親蘑拯。 傳聞我的和親對(duì)象是個(gè)殘疾皇子钝满,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,455評(píng)論 2 359

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

  • 一、進(jìn)制 計(jì)算機(jī)在存儲(chǔ)數(shù)字的時(shí)候都是以二進(jìn)制的形式存儲(chǔ)的 進(jìn)制之間的轉(zhuǎn)換 a.其他進(jìn)制轉(zhuǎn)換成10進(jìn)制:每一位上的數(shù)...
    雨雨雨90閱讀 398評(píng)論 0 0
  • 網(wǎng)站亂碼問(wèn)題我們會(huì)經(jīng)常碰到申窘,大多見(jiàn)于非英文的中文字符或其他字符亂碼弯蚜,而且,這類問(wèn)題常常是因?yàn)榫幋a方式問(wèn)題剃法,主要原因...
    波段頂?shù)?/span>閱讀 2,888評(píng)論 1 9
  • 一碎捺、進(jìn)制 計(jì)算機(jī)在存儲(chǔ)數(shù)據(jù)時(shí)候都是以二進(jìn)制的形式去存的十進(jìn)制、十六進(jìn)制、八進(jìn)制收厨、二進(jìn)制 1.十進(jìn)制 基數(shù):0晋柱,1,...
    龍神海王閱讀 594評(píng)論 0 0
  • 進(jìn)制基本概念 什么是進(jìn)制?進(jìn)制是一種計(jì)數(shù)的方式,數(shù)值的表示形式 常見(jiàn)的進(jìn)制十進(jìn)制诵叁、二進(jìn)制雁竞、八進(jìn)制、十六進(jìn)制 進(jìn)制書...
    極客江南閱讀 2,019評(píng)論 0 11
  • 進(jìn)制 計(jì)算機(jī)在儲(chǔ)存數(shù)據(jù)的時(shí)候都是以二進(jìn)制的形式去存的a.十進(jìn)制基數(shù):0~9進(jìn)位:逢10進(jìn)1 b.十六進(jìn)制:基數(shù):0...
    葉葉阿姨閱讀 233評(píng)論 0 0