pythonGuideFromZero-dataScience-1

摘要:
從 命令行交互式界面 開始

  1. 進入界面
  2. 計算器,number
  3. 嘗試變量賦值
  4. 嘗試字符串操作,string

千里之行豁鲤,始于足下&

Python從零開始系列

交互式界面

理解命令行交互界面

python提供了一個命令行交互式界面垮衷。對于新手洋魂,可能一時半會兒難以理解 “交互界面”。為了便于理解,我們打個比方.比如cmd中,
我們運行

ping www.baidu.com

接著會有回顯

C:\Users\0xff007>ping www.baidu.com

正在 Ping www.a.shifen.com [111.13.100.92] 具有 32 字節(jié)的數(shù)據(jù):
來自 111.13.100.92 的回復(fù): 字節(jié)=32 時間=15ms TTL=54
來自 111.13.100.92 的回復(fù): 字節(jié)=32 時間=14ms TTL=54
來自 111.13.100.92 的回復(fù): 字節(jié)=32 時間=15ms TTL=54
來自 111.13.100.92 的回復(fù): 字節(jié)=32 時間=14ms TTL=54

111.13.100.92 的 Ping 統(tǒng)計信息:
    數(shù)據(jù)包: 已發(fā)送 = 4,已接收 = 4别洪,丟失 = 0 (0% 丟失),
往返行程的估計時間(以毫秒為單位):
    最短 = 14ms肌索,最長 = 15ms蕉拢,平均 = 14ms

C:\Users\0xff007>

這種輸入指令,回顯結(jié)果就式一種命令行交互界面诚亚。

進入python的交互界面

只要cmd里一個單詞作為指令即可

python

回車后得到界面

C:\Users\0xff007>python
Python 3.6.1 (v3.6.1:69c0db5, Mar 21 2017, 18:41:36) [MSC v.1900 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>>

我們的指令就在 ">>>" 后輸入

退出python的命令行交互界面

>>> exit()

入門必學(xué)"hello,Python world"

如下所示晕换,只要使用print()函數(shù),嵌入需要回顯的字符串就好站宗。

Python 3.6.1 (v3.6.1:69c0db5, Mar 21 2017, 18:41:36) [MSC v.1900 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> print("hello,Python world")
hello,Python world
>>>

到這里闸准,我們學(xué)會了簡單的使用交互界面回顯字符串。

計算器,number

python的命令行交互界面對于新手梢灭,最實惠的一個功能夷家,可以當(dāng)作計算器。
在命令行交互界面中敏释,我們可以直接輸入運算符連接數(shù)字的表達式來做運算库快,這聽起來是不是很像小時候玩過的計算器。

下面大家一起來看一些例子

>>> 2+6 # 2+6 結(jié)果 8
8
>>> 2*6 # 2乘以6 結(jié)果12
12
>>> 6-2
4
>>>

注意钥顽,上面 表達式 2+6 后面#號 是注釋符义屏,其后所更內(nèi)容是注釋,我這里添加注釋是為了方便大家理解蜂大。
更多例子
乘方

>>> 2**10
1024

除法

>>> 17//3
5
>>> 17/3
5.666666666666667
>>>

混合運算

>>> (30+3*5)%6
3
>>>

這時候可能有同鞋會發(fā)出疑問啦闽铐,可不可以用字符或字符串來存儲一些值呢。答案是肯定的奶浦。這里我們簡單的嘗試一下兄墅。后續(xù)會有章節(jié)詳細講解

>>> num1 = 1024
>>> num1
1024
>>> num1 = 2048
>>> num1
2048
>>> num2 = 201314
>>> print(num2)
201314
>>> num1+num2
203362
>>> num3
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
NameError: name 'num3' is not defined
>>>

從上面結(jié)果可以看到,我們給num1賦值1024澳叉,此時num1的值就是1024隙咸。隨后我們又賦值為2048沐悦,其值就變?yōu)?048。兩個變量名在被賦予值的同時被聲明扎瓶,也因此可以參與運算了所踊。最后我們試著call num3,發(fā)現(xiàn)回顯traceback, 提示NameError,說概荷,這個num3 未被定義。仔細看看我們的實驗過程碌燕,確實沒有給num3賦予任何值误证,也從未定義過聲明過num3時什么東東。

到這里呢修壕,我們學(xué)會了使用命令式交互腳本來做常見的數(shù)學(xué)計算愈捅,簡單的變量賦值。同時我們第一次比較明白的看了一回錯誤回顯慈鸠,相信后續(xù)再遇到麻煩蓝谨,大家就懂得從這些錯誤回顯中尋找蛛絲馬跡了。

ps 新手很容易困惑的一件事兒青团, 等號和賦值號容易混淆譬巫。在coding world,數(shù)學(xué)中的 = 表示其右邊的值或表達式的值賦予左邊的變量
而等號變成了 == 或者 === 之類的督笆,在python中是 ==

另外值得一提的是,除了 int 和float類型,python的number還支持complex numbers,以及十進制二進制等,這里就不一一列舉了

>>> 3+4j
(3+4j)
>>>

最后我們再來試試比較有實際意義的計算芦昔。注意,其中的 _ 表示暫存上次計算數(shù)值娃肿,用于計算計算咕缎。最后呢,我們用round()函數(shù)是結(jié)果保留了小數(shù)點后的兩位料扰。

>>> tax = 12.5 / 100
>>> price = 100.50
>>> price * tax
12.5625
>>> price + _
113.0625
>>> round(_, 2)
113.06

嘗試字符串操作

學(xué)習(xí)一些高級編程語言時凭豪,都會學(xué)習(xí)字符串處理,很多時候字符串處理可以帶來極大的方便晒杈。這個過程中嫂伞,我們可以更深刻的認識python的語言特性

  1. 字符串輸出
    直接從python3.6.1的doc中抽取一小段演示代碼
>>> 'spam eggs'  # 使用單引號的字符串
'spam eggs'
>>> 'doesn\'t'  # 使用 反斜杠 \' 轉(zhuǎn)義 ,讓反斜杠后的 單引號不被識別為引號對的結(jié)束桐智。這樣字符串里就可以顯示出引號了
"doesn't"
>>> "doesn't"  # 使用雙引號也可以再字符串中表達出單引號末早。
"doesn't"
>>> '"Yes," he said.'
'"Yes," he said.'
>>> "\"Yes,\" he said."
'"Yes," he said.'
>>> '"Isn\'t," she said.'
'"Isn\'t," she said.'

有時候,我們希望回顯出可讀性更高的字符串说庭,又或者時拼接及其靈活的字符串然磷。這時候我們可以再次嘗試print()

>>> '"Isn\'t," she said.'
'"Isn\'t," she said.'
>>> print('"Isn\'t," she said.')
"Isn't," she said.
>>> s = 'First line.\nSecond line.'  # \n 是換行符 ,
>>> s  # 不用print()函數(shù)時刊驴, \n 不會被理解為換行 姿搜,所以結(jié)果中會包含 字符串\n,并且顯示結(jié)果時一行
'First line.\nSecond line.'
>>> print(s)  # 用print() 函數(shù)來打印字符串的花寡润, \n 就會被識別為換行符,結(jié)果就會在\n 后新起一行顯示其后內(nèi)容
First line.
Second line.
  1. 左斜杠的神奇之處
    有時候舅柜,我們也許不想要print()函數(shù)中的 \ 生效,可以試著在字符串的引號前加上一個r
>>> print('C:\some\name')  # here \n means newline!
C:\some
ame
>>> print(r'C:\some\name')  # note the r before the quote
C:\some\name
  1. 輸出多行字符串
    輸出多行字符串
>>> print('''hello
... world
... llls''')
hello
world
llls
>>> print("""
... llll
... lslos
... osk??
... lsls""")
llll
lslos
osk??
lsls
>>> print("""\
... sss
... sdd
... fe""")
sss
sdd
fe
>>>
  1. diy一個命令幫助的回顯
>>> print("""\
... Usage: thingy [OPTIONS]
...      -h                        Display this usage message
...      -H hostname               Hostname to connect to
... """)
Usage: thingy [OPTIONS]
    -h                        Display this usage message
    -H hostname               Hostname to connect to

>>> print("""
... Usage: thingy [OPTIONS]
...      -h                        Display this usage message
...      -H hostname               Hostname to connect to
... """)

Usage: thingy [OPTIONS]
    -h                        Display this usage message
    -H hostname               Hostname to connect to

>>>
  1. 字符串拼接
    兩個字符串直接拼接
>>> 'Py' 'thon'
'Python'
帶運算的字符串拼接
>>> # 3 times 'un', followed by 'ium'
>>> 3 * 'un' + 'ium'
'unununium'
變量存貯字符串并拼接.注意,字符串拼接要用 加號 + .不然會報錯哦, 會直接提示語法錯誤的.
>>> prefix = 'Py'
>>> prefix 'thon'  # can't concatenate a variable and a string literal
  ...
SyntaxError: invalid syntax
>>> ('un' * 3) 'ium'
  ...
SyntaxError: invalid syntax
>>> prefix + 'thon'
'Python'
  1. 字符串索引
    python的字符串是可以索引的,看下面這個圖示,大家應(yīng)該很容易明白的

    var1= "PYTHON" # 定義一個字符串變量var1

    0P1Y2T3H4O5N6

    這樣,對于字符串 var1[0,3]則表示下標0與下標3之間的字符串 PYT .

    如果還是不明白,再看看這個

     +---+---+---+---+---+---+
     | P | y | t | h | o | n |
     +---+---+---+---+---+---+
     0   1   2   3   4   5   6
    -6  -5  -4  -3  -2  -1
    
    

    做幾個小實驗,幫助理解

    >>> word = "visul Studio Code"
    >>> word
    'visul Studio Code'
    >>> word[0]
    'v'
    >>> word[2]
    's'
    >>> word[2:]
    'sul Studio Code'
    >>> word[5:]
    ' Studio Code'
    >>> word[6:12]
    'Studio'
    >>> word[:12]
    'visul Studio'
    >>> len(word) #獲取 word的字符串長度
    17
    >>> word[18] #超出下標范圍會報錯
    Traceback (most recent call last):
    File "<stdin>", line 1, in <module>
    IndexError: string index out of range
    >>> word[6:12]+" python" #字符串截取再拼接
    'Studio python'
    

通過上面的學(xué)習(xí)梭纹,大家應(yīng)該也發(fā)現(xiàn)了命令行交互的一個好處,給指令致份,立刻生效变抽。無論賦值,還是一些回顯行為氮块,都是即刻執(zhí)行绍载。

這一篇,我們了解到了如下知識

  • 命令行交互界面
  • number
  • string

為了更深入學(xué)習(xí)和理解python,大家可以自行閱讀python手冊,手冊通常位于python目錄

比如我的在 D:\codeLang\Python36\Doc\python361.chm

雙擊打開即可
也可以通過開始菜單打開手冊

20170404171622.png
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市滔蝉,隨后出現(xiàn)的幾起案子击儡,更是在濱河造成了極大的恐慌,老刑警劉巖蝠引,帶你破解...
    沈念sama閱讀 211,376評論 6 491
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件阳谍,死亡現(xiàn)場離奇詭異,居然都是意外死亡螃概,警方通過查閱死者的電腦和手機矫夯,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,126評論 2 385
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來谅年,“玉大人茧痒,你說我怎么就攤上這事∪邗澹” “怎么了旺订?”我有些...
    開封第一講書人閱讀 156,966評論 0 347
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經(jīng)常有香客問我,道長皮胡,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,432評論 1 283
  • 正文 為了忘掉前任樱调,我火速辦了婚禮,結(jié)果婚禮上届良,老公的妹妹穿的比我還像新娘笆凌。我一直安慰自己,他們只是感情好士葫,可當(dāng)我...
    茶點故事閱讀 65,519評論 6 385
  • 文/花漫 我一把揭開白布乞而。 她就那樣靜靜地躺著,像睡著了一般慢显。 火紅的嫁衣襯著肌膚如雪爪模。 梳的紋絲不亂的頭發(fā)上欠啤,一...
    開封第一講書人閱讀 49,792評論 1 290
  • 那天,我揣著相機與錄音屋灌,去河邊找鬼洁段。 笑死,一個胖子當(dāng)著我的面吹牛共郭,可吹牛的內(nèi)容都是我干的祠丝。 我是一名探鬼主播,決...
    沈念sama閱讀 38,933評論 3 406
  • 文/蒼蘭香墨 我猛地睜開眼落塑,長吁一口氣:“原來是場噩夢啊……” “哼纽疟!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起憾赁,我...
    開封第一講書人閱讀 37,701評論 0 266
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎散吵,沒想到半個月后龙考,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,143評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡矾睦,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,488評論 2 327
  • 正文 我和宋清朗相戀三年晦款,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片枚冗。...
    茶點故事閱讀 38,626評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡缓溅,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出赁温,到底是詐尸還是另有隱情坛怪,我是刑警寧澤,帶...
    沈念sama閱讀 34,292評論 4 329
  • 正文 年R本政府宣布股囊,位于F島的核電站袜匿,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏稚疹。R本人自食惡果不足惜居灯,卻給世界環(huán)境...
    茶點故事閱讀 39,896評論 3 313
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望内狗。 院中可真熱鬧怪嫌,春花似錦、人聲如沸柳沙。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,742評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽偎行。三九已至川背,卻和暖如春贰拿,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背熄云。 一陣腳步聲響...
    開封第一講書人閱讀 31,977評論 1 265
  • 我被黑心中介騙來泰國打工膨更, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人缴允。 一個月前我還...
    沈念sama閱讀 46,324評論 2 360
  • 正文 我出身青樓荚守,卻偏偏與公主長得像,于是被迫代替她去往敵國和親练般。 傳聞我的和親對象是個殘疾皇子矗漾,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 43,494評論 2 348

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

  • ¥開啟¥ 【iAPP實現(xiàn)進入界面執(zhí)行逐一顯】 〖2017-08-25 15:22:14〗 《//首先開一個線程,因...
    小菜c閱讀 6,365評論 0 17
  • # Python 資源大全中文版 我想很多程序員應(yīng)該記得 GitHub 上有一個 Awesome - XXX 系列...
    aimaile閱讀 26,451評論 6 428
  • 最近在慕課網(wǎng)學(xué)習(xí)廖雪峰老師的Python進階課程薄料,做筆記總結(jié)一下重點敞贡。 基本變量及其類型 變量 在Python中,...
    victorsungo閱讀 1,667評論 0 5
  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理摄职,服務(wù)發(fā)現(xiàn)誊役,斷路器,智...
    卡卡羅2017閱讀 134,629評論 18 139
  • GitHub 上有一個 Awesome - XXX 系列的資源整理,資源非常豐富谷市,涉及面非常廣蛔垢。awesome-p...
    若與閱讀 18,629評論 4 418