1. 代碼中常見的__future__的作用:
由於Python是由社區推動的開源並且免費的開發語言,不受商業公司控制,因此,Python的改進往往比較激進,不兼容的情況時有發生。Python為了確保你能順利過渡到新版本,特別提供了__future__
模塊,讓你在舊的版本中試驗新版本的一些特性。例如,在Python 2.x中,對於除法有兩種情況,如果是整數相除,結果仍是整數,余數會被扔掉,這種除法叫“地板除”:
>>> 10 / 3 3
要做精確除法,必須把其中一個數變成浮點數:
>>> 10.0 / 3 3.3333333333333335
而在Python 3.x中,所有的除法都是精確除法,地板除用//
表示:
$ python3
Python 3.3.2 (default, Jan 22 2014, 09:54:40) [GCC 4.2.1 Compatible Apple LLVM 5.0 (clang-500.2.79)] on darwin Type "help", "copyright", "credits" or "license" for more information. >>> 10 / 3 3.3333333333333335 >>> 10 // 3 3
如果你想在Python 2.7的代碼中直接使用Python 3.x的除法,可以通過__future__
模塊的division
實現。
參考梁雪峰博客:http://www.liaoxuefeng.com/wiki/001374738125095c955c1e6d8bb493182103fac9270762a000/001386820023084e5263fe54fde4e4e8616597058cc4ba1000
類似功能的貌似還有six。例如from six.moves import xrange
2. Python中對異常的處理有
try...except, try...finally,或者fry...except...finally,無論怎樣,finally之后的句子都會執行
raise...通過raise顯式的引發異常,一旦執行了raise語句,raise后面的語句將不能執行。
3. Pycharm中多行代碼前面同時增加空格,可以選中多行代碼,按Tab鍵。多行同時取消縮進,選中多行,按shift+Tab
撤銷步驟ctrl+z,多行注釋用ctrl+/