2017-09-15 46 views
0

當我在Python(2.7.14rc1)官方文檔中搜索字符串的strip方法時,我發現有兩個定義。那是str.strip([chars])string.strip(s[, chars])Python(2.7.14rc1)官方文檔中帶方法的兩種不同定義? str.strip([chars])vs string.strip(s [,chars])

我的問題是:這兩個定義之間有什麼區別?我應該遵循哪一個?

str.strip([chars])是5.內置類型部分:https://docs.python.org/2/library/stdtypes.html#str.strip

string.strip(s[, chars])是7.字符串服務部分:https://docs.python.org/2/library/string.html#string.strip

回答

0

除了string.strip()需要額外導入(import string)這一事實之外,兩種方法之間沒有功能差異。

另外,string.strip()未包含在Python 3中,而.strip()(直接作用於str對象的方法)與string.strip()相比更常見。

除此之外,您可以自由使用任何您想使用的。

+1

哦!要使用'string.strip(s [,chars])',我們首先使用'import string'。然後'strip(s [,chars])'方法應用於第一個參數's'。而在Python 3中,不包含string.py,我們直接將strip方法應用於內置[str](https://docs.python.org/2/library/functions.html#str)類型 – banghuazhao

+0

@banghuazhao Yep ,但在Python 3中'string.py'仍然存在 - 只是他們擺脫了'string.strip()'方法。 :) – Jerrybibo

0

由於strip()可以作爲一種方法內置str類型,可以在不導入string模塊的情況下使用它。

如果你看看code,你可以看到string.strip()仍然使用str.strip()

+0

感謝您指向'str'類型和代碼的鏈接! – banghuazhao