国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

教女朋友學Python(4)——算

2019-11-14 11:59:43
字體:
來源:轉載
供稿:網友
我本來不會Python,一邊學一邊試圖以最簡單方式來解釋編程和Python,讓各位理工男可以拿去教自己的女朋友。

上回說到,妹子們要經常換老公。所以用了一個叫變量的東西來存老公的名字、照片的數量等:

name="胡歌"first=1count=28

現在我們要把他們替換到url中相應的地方。想想在數學上的變量,x = 1,y=2,z = 1+2,現在要把1和2分別換成x和y,那是很簡單的,就是z=x+y。但是問題來了,x和y都是我們上期說的整數,他們之間是可以加的。但是,url是一個字符串類型,怎么辦呢,還有其他類型的變量之間的操作,又該怎么辦呢?且聽我慢慢道來。

上期說到,基本變量類型有五種:整型(int)、浮點型(float)、字符串(str)、布爾型(bool)、空值(None),我們分情況來說。

整型(int)

int就是整數,加減乘除余不解釋。

浮點型(float)

float就是小數,也不解釋。

嗯,其實我還是會解釋的:

有沒有發現奇怪的地方?為什么4.5-3.7是0.7999999999999998而不是0.8,4.5*3.7是16.650000000000002而不是16.65。這主要是有限長度的二進制沒法精確表達浮點數導致的,解釋起來比較復雜,實際上這個情況出現的不多,誤差也比較小,大部分時候對計算結果影響可以忽略。有興趣了解具體原因的同學請在微信公眾號回復關鍵字“float”獲取。

字符串(str)

字符串的操作比較多,這里暫時只講一個我們要用到的,就是字符串的拼接。字符串的拼接用加號(+)。比如:

str1 = "我是一個"str2 = "兵"str3 = str1 + str2那么str3是什么呢?

有一點要記住,字符串不能用減號

布爾型(bool)

布爾型只有兩個值,True和False,運算符也只有三個not,and,or。還記得集合與或非的同學們就不用我講了,一看就明白。不記得我也不講了,因為兩個值三個運算符,排列組合下來的情況也就那么幾種,在演示里面看的比較清楚。

演示:

空值(None)

空值也可以參與運算?是的,不信你看:

不過實際上很少直接拿None這么運算,所以這里只是拿出來讓同學們看看,空值,他也是可以參與運算的。

看完上面數據類型的運算,是不是已經不記得我們要干什么了,我來提醒一下,要把name,first,count替換到url里面的相應的地方去。url是字符串,字符串的拼接用什么?加號!

所以:url = "http://cn.bing.com/images/search?q=" + name + "&first=" + first +"&count=" + count來驗證一下:

可惜,出錯了,錯誤信息:TypeError: Can't convert 'int' object to str implicitly。數據類型錯誤,不能將int類型的對象隱式轉換成str類型。現在是不是想起來了,name是str類型,這么加進去,是沒有問題的。但是first和count都是int類型,要想和str類型拼接,得先把他們轉換成str類型,而且錯誤提示我們了,隱式轉換(就是啥都不干讓系統自己去轉)是不行的。毛主席教導我們說,喜歡就表白,不行就強X。軟的不行,就來硬的,上強制轉換。int強制轉換成str怎么辦?用str()

看出來num和numStr的區別了吧!

str()是一個函數,那么函數是什么呢?

數學里面是f(x)=3x + 111,那如果a=f(4),那么a的值是多少呢。現在我們用的函數numStr = str(num),形式上是不是跟數學上的函數一模一樣!只不過,這里的str()這個函數,python已經給我們定義好了,我們只需要調用就可以了。

這樣python已經給我們準備好的函數,叫內建函數BIF(built-in functions)。要查看python里面所有的BIF,使用dir(__builtins__),注意前后各有兩個下劃線。dir()也是一個內建函數喲。我用的python版本一共提供了152個內建函數,我怎么知道的?反正我不是一個個數的。

看到了嗎,len也是一個內置函數,用來量長度。量什么的長度呢,請用help(len)看len的幫助文檔。

請同學們自己去探索一下每個內建函數是做什么的,怎么用吧。

看到這,是不是又一次忘了,我們是要干什么的?對了,是為了方便換老公的。知道了str()函數可以將int類型轉換成str類型,我們的url就可以改成這樣啦。

url = "http://cn.bing.com/images/search?q=" + name + "&first=" + str(first) +"&count=" + str(count)

來,測試一下:

這次對了吧。

為了抓老公,經過兩期的努力,我們已經寫了四行代碼了,可是要是軟件一關,就什么都沒留下,怎么辦呢?我們可以新建一個擴展名是py的文件。

然后將我們的代碼寫在新建的這個文件里面

看到了吧,在Visual Studio Code里面,不同部分的代碼有不同的顏色,比我們在終端管理器里面好看多了。而且看gif圖里面,我在粘貼完url后前面留了一個空格,我把他刪掉了,這不是強迫癥,是一定要刪掉的,在python里面是靠縮進來識別邏輯層次的。

現在我們運行代碼。

注意在運行之前先用了一個內建函數exit(),退出了python的交互式環境,所謂交互式嘛,就是我輸入一句代碼,就可以讓他顯示一句代碼,用于測試,要運行整個py文件只需要python命令后面加py文件名就可以了,一次運行完文件里的所有代碼,就不跟他交互了。

但是,我們發現運行了代碼文件,什么效果都沒有,為什么?因為我們的代碼什么都沒干,我們定義了變量name、first、count、url,就只是定義了而已。如果同學們想看url,在代碼后面加一行PRint(url),保存后再運行一次,url的值就可以顯示出來了。print()又是一個內建函數,用于將某個對象打印在屏幕上。

這期我們說了運算符和內建函數,還使用了str、print、len、dir、help等內建函數。python好用,很大程度上在于他提供了特別多內建函數,但是,再多的內建函數,也不可能窮盡所有人的需求呀,所以一定有辦法自建函數,下期,我們就來討論自建函數。

歡迎關注我的微信公眾號獲取最新文章:


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 伊吾县| 钟山县| 台湾省| 秭归县| 荔浦县| 都安| 南康市| 盘山县| 阿巴嘎旗| 屯门区| 泰宁县| 涟源市| 安泽县| 阿城市| 嘉祥县| 赣榆县| 婺源县| 长丰县| 普宁市| 青海省| 琼中| 阳谷县| 昭平县| 和政县| 正阳县| 房产| 雷州市| 新丰县| 彩票| 河北区| 卓资县| 双江| 九江市| 大同县| 新密市| 彭山县| 乌鲁木齐市| 洛宁县| 平原县| 荣成市| 霍州市|