日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python之禅怎么关闭_《Python之禅》中对于Python编程过程中的一些建议

發布時間:2023/12/15 python 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python之禅怎么关闭_《Python之禅》中对于Python编程过程中的一些建议 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

圍繞一門語言,學習它的文化精髓,能讓你成為一名更優秀的程序員。如果你還沒讀過Python之禪(Zen of Python) ,那么打開Python的命令提示符輸入import this,列表中的每一項你都可以在這里找到相對應的例子。

吸引我注意力的一條是:

優雅勝于丑陋 (Beautiful is better than ugly)

看下面例子:

一個帶有數字參數的list函數其功能是返回參數中的奇數可以分開寫:

?

記住Python中那些非常簡單的事

兩個變量的交換:

?

參數在切片操作中的步驟,如:

?

一個特殊的例子 `x[::-1]`用來反轉x的實用語法。

?

不要用可變對象作為默認參數值(Don't use mutable as defaults)

?

使用iteritems而不是items

iteriterms 使用的是 generators,所以當迭代很大的序列是此方法更好

?

此情景和range與xrange的關系相似。

使用isinstance 而不是type

不要這樣做:

?

應該是這樣:

?

至于為什么這樣做,看這里:http://stackoverflow.com/a/1549854/504262

需要注意的是這里使用basestring而不是str是因為你可能會用一個unicode對象去檢查是否為string,例如:

?

因為在Python中3.0以下的版本存在兩種字符串類型str和unicode

學習各種集合(learn the various collections)

python有各種各樣的容器數據類型,在特定情況下選擇python內建的容器如:list和dict。通常更多像如下方式使用:

?

一種更好的方案如下:

?

一種更好的選擇 collection類型defautdict:

?

其它集合

?

當創建類時Python的魔術方法:

?

條件賦值

?

表達式請起來恰恰像:如果y等于1就把3賦值給x,否則把2賦值給x,當然同樣可以使用鏈式條件賦值如果你還有更復雜的條件的話。

?

然而到了某個特定的點,它就有點兒過分了。

記住,你可以在任何表達式中使用if-else例如:

?

func1將被調用如果y等于1的話,反之func2被調用。兩種情況下,arg1和arg2兩個參數都將附帶在相應的函數中。

類似地,下面這個表達式同樣是正確的

?

class1和class2是兩個類

在有必要的時侯使用Ellipsis

創建類時,你可以使用__getitem__,讓你的類像字典一個工作,拿下面這個類舉例來說:

?

因為有了__getitem__,你就能夠通過對象x的x[‘a']獲取a的值,這應該是公認的事實。

這個對象通常用于繼承Python的切片(slicing) (http://docs.python.org/library/stdtypes.html#bltin-ellipsis-object),如果添加如下語句:

?

我們就可以使用x[…]獲取的包含所有項的序列

?

總結

以上是生活随笔為你收集整理的python之禅怎么关闭_《Python之禅》中对于Python编程过程中的一些建议的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。