作者:王大偉 Python愛好者社群唯一小編,請勿轉載,謝謝。

出處:Python進階系列連載(1)——那些容易被忽略的問題(上)

小編配套免費影片教程:

Hellobi Live | 破冰入門Python

課程內容:

1、Anaconda安裝2、jupyter常用操作3、Python基本資料型別4、Python基本運算和表示式5、Python程式基本控制流程(順序,分支,迴圈)6、Python特色資料型別(列表,元組,字典,集合)7、Python函式8、Python模組匯入使用之time、random模組9、Python異常處理10、Python檔案操作 11、Python後續學習提升方向和建議

公眾號:Python愛好者社群(微信ID:python_shequ),關注,檢視更多連載內容

前言

哈嘍,大家好,入門部分連載一路走過來,得到了很多好評

原因主要是:

1。通俗易懂

2。幽默風趣

我將延續這個傳統,繼續進階部分的連載

如果還沒看過我的入門連載部分,先看:

https://

ask。hellobi。com/blog/wa

ngdawei/10288

當然,小編的

免費入門課程

已經有咯,看過連載的朋友可以看看影片再快速梳理一遍~

影片傳送門:

https://

edu。hellobi。com/course/

234

Python進階系列連載(1)——那些容易被忽略的問題(上)

因為個人原因,最近沉迷機器學習,所以最近連載速度可能不是很快,見諒

本篇我們來聊一聊一些在入門部分容易被忽略的問題

int()強制轉換浮點數

在int()的強制轉換浮點數時候,不管是正數還是負數,只取整數部分。

Python進階系列連載(1)——那些容易被忽略的問題(上)

注意:這裡不是向上或者向下取整,也不是四捨五入。

無限遞迴

還記得我們講的俄羅斯套娃麼,還記得數列求通項公式麼,都用到了遞迴的思想

如果不記得了,記得回看入門教程哦~

遞迴是為了將問題簡化為更小規模的同類型問題,最後加以解決。

但是有一種情況是遞迴時不斷呼叫自身,達到不了最簡單的情況(例如俄羅斯套娃一層層開啟到最內層的)

所以一直找不到遞迴的出口

說了這麼多,我們看個例子:

Python進階系列連載(1)——那些容易被忽略的問題(上)

我們定義了一個函式名為recurse

然後函式體中呼叫自身

當我們執行呼叫這個函式時,系統丟擲異常,意思是達到了最大的遞迴深度。

你可以認為系統設定了一個最大遞迴次數,如果超過這個次數還沒解決問題,則丟擲異常

簡答點說,就是:

繞來繞去你怎麼還沒解決問題,你是要上天麼!

#FormatImgID_7##FormatImgID_8#

這種問題,我們要避免

字串是不可變的

在入門階段我們說過,字串和元組是不可變的資料型別,那字串的不可變體現在哪呢?

看個例子:

如果我想改名字,而且改的是姓【不要當真,只是為了舉例子,我爸應該看不到這篇文章的】

我把姓 ‘王’ 改為 ‘ 方’,我就做了如下修改:

Python進階系列連載(1)——那些容易被忽略的問題(上)

結果丟擲異常,提示不讓我修改,這體現了字串的不可變性,如果你執意要改呢?

可以這樣

Python進階系列連載(1)——那些容易被忽略的問題(上)

聯合使用字串的切片和拼接完成~

一些遺漏的字串方法

upper()和lower()方法

upper()能將一個字串的字母全變成大寫,lower()與之相反:

Python進階系列連載(1)——那些容易被忽略的問題(上)

find()方法

find()可以在字串中查詢子串是否存在:

Python進階系列連載(1)——那些容易被忽略的問題(上)

如果找到,返回的是子串的起始索引位置,例如Hello是從字串索引0位置開始,空格是在索引5位置

當找不到子串時,返回-1,而不是丟擲異常

還可以限定查詢開始的索引位置:

Python進階系列連載(1)——那些容易被忽略的問題(上)

我們知道,空格的索引是5,當我們從索引3開始往後找,能找到空格

當我們從索引7開始找,則返回沒找到,因為索引7已經在索引5之後了

注意操作的返回值

Python進階系列連載(1)——那些容易被忽略的問題(上)

我們用a來 接盤 , 啊呸!

接收

來自print的返回值,發現a是NoneType,所以print是沒有返回值的

Python進階系列連載(1)——那些容易被忽略的問題(上)

例如在列表中,你希望接收排序的結果,你可能會這樣寫:

Python進階系列連載(1)——那些容易被忽略的問題(上)

發現這樣是沒有結果的!

你還能找出哪些容易犯錯的地方呢?

人生苦短,我選Python!

下課!

作業:期待下一次連載【壞笑】

未完待續~