Python基礎(chǔ)教程(四)

Python基礎(chǔ)

數(shù)據(jù)類型和變量

  • 數(shù)據(jù)類型
    電子計(jì)算機(jī)也就是我們俗稱的計(jì)算機(jī)(電腦)暂论,其主要功能是完成科學(xué)計(jì)算的任務(wù)逆害,因此往果,計(jì)算機(jī)程序當(dāng)然可以處理各種數(shù)據(jù)信息筑公。但是數(shù)據(jù)源無處不在吓歇,人類無時(shí)無刻不在不生成數(shù)據(jù)孽水,數(shù)據(jù)的格式也就多種多樣,計(jì)算機(jī)除了可以計(jì)算數(shù)值城看,還可以處理文本信息女气、音像信息等各種各樣的數(shù)據(jù),為了可以方便的定義和管理這些數(shù)據(jù)测柠,我們引入了數(shù)據(jù)類型的概念炼鞠。

數(shù)值型

在Python中支持四種不同的數(shù)值類型:

  1. int(有符號(hào)整型)
  2. long(長整型,也可以代表八進(jìn)制和十六進(jìn)制)
  3. float(浮點(diǎn)型)
  4. complex(復(fù)數(shù))
  • Int 有符號(hào)整型
    int可以處理整數(shù)轰胁,整數(shù)負(fù)數(shù)都可以谒主,在Python中的表示方式與數(shù)學(xué)上的寫法無二,例如:0赃阀,-1霎肯,1024,等等榛斯。

計(jì)算機(jī)由于使用二進(jìn)制观游,所以,有時(shí)使用十六進(jìn)制表示整數(shù)比較方便驮俗,十六進(jìn)制用0x作為前綴和0-9,a-f表示懂缕。例如:0xff000xffff王凑,等等提佣。

  • Long 長整型(期望)
    Long類型代表著無限大小的整數(shù)吮蛹,但是這樣寫實(shí)數(shù)要在數(shù)字的最后加一個(gè)大寫或者小寫的L但為了避免與數(shù)字1混淆建議使用大寫的L來顯示長整型拌屏。
  • Float 浮點(diǎn)型
    Float數(shù)值由整數(shù)部分和小數(shù)部分組成,之所以成為浮點(diǎn)數(shù)术荤,是因?yàn)榘凑湛茖W(xué)計(jì)數(shù)法表示時(shí)倚喂,一個(gè)浮點(diǎn)數(shù)的小數(shù)點(diǎn)位置是可以改變的。但是對于非常大或者非常小的浮點(diǎn)數(shù)瓣戚,就必須使用科學(xué)計(jì)數(shù)法表示端圈,把10用e代替。例如:1.024e3 = 1.024*10^3 = 1024子库,等等舱权。
    注意:整數(shù)和浮點(diǎn)數(shù)在計(jì)算機(jī)內(nèi)部存儲(chǔ)的方式是不同的,整數(shù)運(yùn)算永遠(yuǎn)是精確的仑嗅,而浮點(diǎn)數(shù)運(yùn)算則可能會(huì)有四舍五入的誤差宴倍。
  • Complex
    Complex復(fù)數(shù)類型,復(fù)數(shù)由實(shí)數(shù)部分和虛數(shù)部分組成仓技,可以用a+bj鸵贬,或者complex(a,b)表示,復(fù)數(shù)的實(shí)數(shù)部分和虛數(shù)部分均為浮點(diǎn)型脖捻。例如:3.14j阔逼,4.53e-7j-6545+0j地沮。
    注意:虛數(shù)部分后的字母J嗜浮,大小寫均可

字符串(type為str)

字符串是以' '" "括起來的任意文本摩疑。而' '" "本身只是表明其數(shù)據(jù)類型為字符串型危融,' '" "作為定界符不作為字符串的一部分。
例如:'Axios'未荒,其中的字符就只包括A专挪,xi片排,o寨腔,s這幾個(gè) 字符。如果'本身也是字符串的一部分的話率寡,那么就可以使用" "作為定界符迫卢,例如:"I'm OK",其中包含字符',我們就可以使用不同的定界符進(jìn)行符號(hào)的輸出冶共。

如果字符串中既包含'又包含"乾蛤,這樣該怎樣辦每界?在計(jì)算機(jī)中有一種轉(zhuǎn)義字符,我們可以使用其來進(jìn)行表示家卖,比如:

' I\'m \"OK\"! '

其表示真正字符串的內(nèi)容是:

I'm "OK"!

怎樣對變量賦值字符串型的內(nèi)容眨层,內(nèi)容的顯示呢?讓我們來看上荡。

str = "Hello World"    #對變量str賦值內(nèi)容為Hello World的字符串
print str              #以Python2.X的語法輸出變量str

思考:在其他編程語言中趴樱,可以對字符串進(jìn)行截取。例如:Java語言中的substring酪捡,Visual FoxPro中的substr叁征,那么在Python中我們該怎樣對字符串進(jìn)行子串的訪問呢?

在Python中對字符串取其子串非常方便逛薇,可以把字符串當(dāng)做其它編程語言的一維數(shù)組那樣了解捺疼,使用其下標(biāo)對字符串進(jìn)行操作。
Python字符串的下標(biāo)從0開始永罚,若字符串的長度為n啤呼,則字符串的上下限則為[0,n-1]尤蛮。使用str[頭下標(biāo):尾下標(biāo)]媳友,就可以截取相應(yīng)的字符串。

#-*- coding:utf-8  -*-

str="Hello World! "     #字符串變量str产捞,內(nèi)容為Hello World
print str               #輸入完整字符串
print str[0]            #輸入字符串中的一個(gè)字符
print str[:5]           #輸出字符串從默認(rèn)起始位置0開始到下標(biāo)為5之間的字符串醇锚,即Hello
print str[6:]           #輸出字符串從第7個(gè)字符開始的字符串,即World
print str[::-1]         #倒敘輸出字符串的內(nèi)容
print str*2             #輸出字符串兩次
print str+"Test"        #輸出連接的字符串

輸出結(jié)果

思考:代碼中的#-*- coding:utf-8 -*-的含義是什么坯临?

如果要在Python2.X的py文件里面寫中文焊唬,則必須要添加一行聲明文件編碼的注釋,否則Python2.X會(huì)默認(rèn)使用ASCII編碼看靠。

思考:為什么會(huì)使用ASCII編碼而不是使用Unicode編碼呢赶促?

因?yàn)镻ython的誕生比Unicode標(biāo)準(zhǔn)發(fā)布的時(shí)間還要早,所以最早的Python只支持ASCII編碼挟炬,普通的字符串'ABC'在Python內(nèi)部都是ASCII編碼的鸥滨。
Python在后來添加了對Unicode的支持,以Unicode表示的字符串用u'...'表示谤祖。
Unicode字符串除了多了一個(gè) u 之外婿滓,與普通字符串沒啥區(qū)別,轉(zhuǎn)義字符和多行表示法仍然有效粥喜。

思考:若在字符串左右有空格的介入凸主,可是用戶又想刪除空格,這時(shí)該怎么辦额湘?

name=" Gideon Yu "          #字符串變量name卿吐,內(nèi)容為 Gideon Yu 旁舰,內(nèi)容左右中均有空格
print name                  #輸出完整字符串
print name.lstrip()         #移除字符串左邊的空格
print name.rstrip()         #移除字符串右邊的空格
print name.strip()          #移除字符串左右兩邊的空格
print "".join(name.split()) #移除所有的空格
輸出結(jié)果

spilt()函數(shù)
函數(shù)格式:str.split(str="", num=string.count(str))
函數(shù)功能:Python split()通過指定分隔符對字符串進(jìn)行切片,如果參數(shù)num 有指定值嗡官,則僅分隔 num 個(gè)子字符串箭窜。
參數(shù):
str -- 分隔符,默認(rèn)為所有的空字符衍腥,包括空格绽快、換行(\n)、制表符(\t)等紧阔。
num -- 分割次數(shù)。

例子:

name=" Gideon Yu "     #字符串變量name续担,內(nèi)容為 Gideon Yu 擅耽,內(nèi)容左右中均有空格
print name.split()

結(jié)果:
['Gideon', 'Yu']

join()函數(shù)
函數(shù)格式: 'sep'.join(seq)
函數(shù)功能:以sep作為分隔符,將seq所有的元素合并成一個(gè)新的字符串
參數(shù):
sep:分隔符物遇」猿穑可以為空
seq:要連接的元素序列、字符串询兴、元組乃沙、字典
返回值:返回一個(gè)以分隔符sep連接各個(gè)元素后生成的字符串

例子:

part=['Gideon','Yu']
print " ".join(part)

結(jié)果:
Gideon Yu

轉(zhuǎn)義字符

轉(zhuǎn)義字符 描述 轉(zhuǎn)義字符 描述
\(行尾時(shí)) 續(xù)行符 \e 轉(zhuǎn)義
\ 反斜杠符號(hào) \000
' 單引號(hào) \n 換行
" 雙引號(hào) \v 縱向制表符
\a 響鈴 \t 橫向制表符
\b 退格(Backspace) \xyy 十六進(jìn)制數(shù),yy代表的字符
\f 換頁 \oyy 八進(jìn)制數(shù)诗舰,yy代表的字符
\r 回車 \other 其他的字符以普通格式輸出

例如:\o12代表換行警儒,\x0a代表換行。

如果字符串里面有很多字符都需要轉(zhuǎn)義眶根,就需要加入很多\蜀铲,為了簡化,Python允許使用r' '表示' '內(nèi)部的字符串默認(rèn)不需要轉(zhuǎn)義属百。

#-*- coding:utf-8 -*-
print 'Python 基礎(chǔ)教程\nThinking in Python'
print r'Python 基礎(chǔ)教程\nThinking in Python'
輸出結(jié)果

如果字符串內(nèi)部有很多換行记劝,用\n寫在一行里不好閱讀,為了簡化族扰,Python允許用'''...'''的格式表示多行內(nèi)容厌丑。

#-*- coding:utf-8 -*-
print '''Python
基礎(chǔ)教程
Thinking in Python'''

輸出結(jié)果

注意:在換行輸出中也是可以使用轉(zhuǎn)義字符的,若想使轉(zhuǎn)義字符失效渔呵,則必須使用r前綴怒竿。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市厘肮,隨后出現(xiàn)的幾起案子愧口,更是在濱河造成了極大的恐慌,老刑警劉巖类茂,帶你破解...
    沈念sama閱讀 221,548評(píng)論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件耍属,死亡現(xiàn)場離奇詭異托嚣,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)厚骗,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,497評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門示启,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人领舰,你說我怎么就攤上這事夫嗓。” “怎么了冲秽?”我有些...
    開封第一講書人閱讀 167,990評(píng)論 0 360
  • 文/不壞的土叔 我叫張陵舍咖,是天一觀的道長。 經(jīng)常有香客問我锉桑,道長排霉,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 59,618評(píng)論 1 296
  • 正文 為了忘掉前任民轴,我火速辦了婚禮攻柠,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘后裸。我一直安慰自己瑰钮,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,618評(píng)論 6 397
  • 文/花漫 我一把揭開白布微驶。 她就那樣靜靜地躺著浪谴,像睡著了一般。 火紅的嫁衣襯著肌膚如雪祈搜。 梳的紋絲不亂的頭發(fā)上较店,一...
    開封第一講書人閱讀 52,246評(píng)論 1 308
  • 那天,我揣著相機(jī)與錄音容燕,去河邊找鬼梁呈。 笑死,一個(gè)胖子當(dāng)著我的面吹牛蘸秘,可吹牛的內(nèi)容都是我干的官卡。 我是一名探鬼主播,決...
    沈念sama閱讀 40,819評(píng)論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼醋虏,長吁一口氣:“原來是場噩夢啊……” “哼寻咒!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起颈嚼,我...
    開封第一講書人閱讀 39,725評(píng)論 0 276
  • 序言:老撾萬榮一對情侶失蹤毛秘,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體叫挟,經(jīng)...
    沈念sama閱讀 46,268評(píng)論 1 320
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡艰匙,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,356評(píng)論 3 340
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了抹恳。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片员凝。...
    茶點(diǎn)故事閱讀 40,488評(píng)論 1 352
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖奋献,靈堂內(nèi)的尸體忽然破棺而出健霹,到底是詐尸還是另有隱情,我是刑警寧澤瓶蚂,帶...
    沈念sama閱讀 36,181評(píng)論 5 350
  • 正文 年R本政府宣布糖埋,位于F島的核電站,受9級(jí)特大地震影響窃这,放射性物質(zhì)發(fā)生泄漏阶捆。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,862評(píng)論 3 333
  • 文/蒙蒙 一钦听、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧倍奢,春花似錦朴上、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,331評(píng)論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至畔裕,卻和暖如春衣撬,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背扮饶。 一陣腳步聲響...
    開封第一講書人閱讀 33,445評(píng)論 1 272
  • 我被黑心中介騙來泰國打工具练, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人甜无。 一個(gè)月前我還...
    沈念sama閱讀 48,897評(píng)論 3 376
  • 正文 我出身青樓扛点,卻偏偏與公主長得像,于是被迫代替她去往敵國和親岂丘。 傳聞我的和親對象是個(gè)殘疾皇子陵究,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,500評(píng)論 2 359

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

  • Python 簡介Python 是一個(gè)高層次的結(jié)合了解釋性、編譯性奥帘、互動(dòng)性和面向?qū)ο蟮哪_本語言铜邮。Python 的設(shè)...
    在暴風(fēng)雨中逆襲閱讀 1,727評(píng)論 0 12
  • http://python.jobbole.com/85231/ 關(guān)于專業(yè)技能寫完項(xiàng)目接著寫寫一名3年工作經(jīng)驗(yàn)的J...
    燕京博士閱讀 7,582評(píng)論 1 118
  • 021024—賴詩如 長頸鹿杰拉德不會(huì)跳舞,當(dāng)他鼓足勇氣出現(xiàn)在叢林里一年一度的舞會(huì)時(shí),大家都嘲笑他松蒜。黯然神傷的杰...
    小詩妮閱讀 411評(píng)論 0 0
  • 腦子里運(yùn)轉(zhuǎn)的內(nèi)容已經(jīng)足夠豐富了扔茅,然而當(dāng)面對空白的輸入頁面時(shí)往往感到無措,打出一個(gè)詞語牍鞠,清空咖摹,打出一個(gè)句子,看了看又...
    滿臉都寫著高興閱讀 120評(píng)論 0 0
  • 最近刷片难述,發(fā)現(xiàn)了一個(gè)有趣的現(xiàn)象萤晴,盡管每個(gè)國家的人們各不相同,但不論是哪國的僵尸胁后,都有一個(gè)特點(diǎn):喪失了自己的意識(shí)店读,不...
    報(bào)以歌閱讀 757評(píng)論 2 2