欧美三区_成人在线免费观看视频_欧美极品少妇xxxxⅹ免费视频_a级毛片免费播放_鲁一鲁中文字幕久久_亚洲一级特黄

對Python函數(shù)設(shè)計規(guī)范詳解

系統(tǒng) 1973 0

Python函數(shù)的設(shè)計規(guī)范

1、Python函數(shù)設(shè)計時具備耦合性和聚合性

1)、耦合性:

(1).盡可能通過參數(shù)接受輸入,以及通過return產(chǎn)生輸出以保證函數(shù)的獨(dú)立性;

(2).盡量減少使用全局變量進(jìn)行函數(shù)間通信;

(3).不要在函數(shù)中直接修改可變類型的參數(shù);

(4).避免直接改變定義在另外一個模塊中的變量;

2)、聚合性:

(1).每個函數(shù)都應(yīng)該有一個單一的、目的統(tǒng)一的目標(biāo);

(2).每個函數(shù)的功能都應(yīng)該相對簡單;

2、Python函數(shù)在腳本中應(yīng)用示例

例1: 將/etc/passwd文件中的每一行都分隔為一個列表

            
[root@test0528]# vim test1.py

#!/usr/bin/python27

#

importre

filename ='/etc/passwd'

f1 =open(filename,'r')

l1 =f1.readlines()

bash =[]

for i inl1:

  bash.append(i)

defgenList(x):

  y = 0

  x = len(bash)   

  while y <= x:

       yield bash[y]

    y += 1

g1 =genList(bash)

count =0 

whilecount < len(bash):

  gg=g1.next()

  linelist = gg.split(':')

  print linelist

  count += 1

f1.close()

[root@test0528]# ./test1.py

['root','x', '0', '0', 'root', '/root', '/bin/bash\n']

['bin','x', '1', '1', 'bin', '/bin', '/sbin/nologin\n']

['daemon','x', '2', '2', 'daemon', '/sbin', '/sbin/nologin\n']

......

['nginx','x', '496', '493', 'nginx user', '/var/cache/nginx','/sbin/nologin\n']

['mysql','x', '27', '27', 'MySQL Server', '/var/lib/mysql','/bin/bash\n']

['redis','x', '495', '492', 'Redis Database Server', '/var/lib/redis','/sbin/nologin\n']

          

例2: 將任意文件按用戶指定的分隔符把每一行都分隔為一個列表

            
[root@test0528]# vim test2.py

#!/usr/bin/python27

#

importre

#print"PLease input filename:"

#filename= raw_input()

filename =str(raw_input("PLease input filename: "))

f1 =open(filename,'r')

l1 =f1.readlines()

#print"PLease input separator:"

#separator= raw_input()

separator= str(raw_input("PLease input separator: "))

bash =[]

for i inl1:

  bash.append(i)

defgenList(x):

  y = 0

  x = len(bash)   

  while y <= x:

       yield bash[y]

    y += 1

g1 =genList(bash)

count =0 

whilecount < len(bash):

  gg=g1.next()

  linelist = gg.split(separator)

  print linelist

  count += 1

f1.close()

[root@test0528]# ./test2.py

PLeaseinput filename: /etc/passwd

PLeaseinput separator: :

['root','x', '0', '0', 'root', '/root', '/bin/bash\n']

['bin','x', '1', '1', 'bin', '/bin', '/sbin/nologin\n']

['daemon','x', '2', '2', 'daemon', '/sbin', '/sbin/nologin\n']

...

['nginx','x', '496', '493', 'nginx user', '/var/cache/nginx','/sbin/nologin\n']

['mysql','x', '27', '27', 'MySQL Server', '/var/lib/mysql','/bin/bash\n']

['redis','x', '495', '492', 'Redis Database Server', '/var/lib/redis','/sbin/nologin\n']

例3:用折疊的方式(reduce)求階乘

[root@test0528]# vim test3.py

#!/usr/bin/python27

# getn!

num =int(raw_input('please nput a number:'))

num +=1

list =range(1,num)

deffunc(m,n):

  return m*n

x =reduce(func,list)

printx

[root@test0528]# ./test3.py

pleasenput a number:4

24

          

以上這篇對Python函數(shù)設(shè)計規(guī)范詳解就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯(lián)系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長非常感激您!手機(jī)微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!??!

發(fā)表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 二区视频 | 亚洲成av人片在线观看 | 亚洲天堂中文网 | 能看的毛片网站 | 天天夜夜久久 | 三级福利视频 | 久久草视频这里只精品 | 亚洲国产精品久久久久久网站 | 天干夜天天夜天干天国产电影 | 999久久久国产999久久久 | 国产亚洲精品高清在线 | 亚洲天堂一区二区三区 | 国产a区 | 日本三级带日本三级带黄国产 | 亚洲一区二区三区在线免费观看 | 欧美一区二区三区爽大粗免费 | 成人午夜精品久久久久久久小说 | 久久99国产亚洲精品观看 | 色综合亚洲精品激情狠狠 | 添人人躁日日躁夜夜躁夜夜揉 | 黑人黄色大片 | 公么吃奶满足了我苏媚 | 国产黄色在线观看 | 嫩草视频在线播放 | 国产精品98福利小视频 | 五月天婷婷网亚洲综合在线 | 一级午夜a毛片免费视频 | 日韩做A爰片久久毛片A片 | 奇米88| 久久国产乱子伦精品免 | 久爱www成人网免费视频 | 精品成人免费一区二区在线播放 | 激情丁香婷婷 | 噜噜噜天天躁狠狠躁夜夜精品 | 在线看免费观看日本 | 九九99在线视频 | 国产目拍亚洲精品99久久精品 | 国产成人福利在线视老湿机 | 久久久久久久一区二区 | 久久久久久久国产精品毛片 | 最新中文字幕 |