国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

Python 用推導式解決“七段碼”問題

番茄西紅柿 / 3080人閱讀

摘要:第二類是段不點亮狀態即不包含段可以看作組成的是一個環零所以需要在雙倍長度的字符串中取出所有長度為的所有子串共有種每個字串內部作排序后再去重留下種組合。這樣兩類總共合計有種組合。

?源代碼

from itertools import chain,combinations as combif __name__ == '__main__':    L = list('abcdefg')    C = [[''.join(c) for c in list(comb(L,i+1)) if 'g' in c] for i in range(7)]    D = list(chain.from_iterable(C))    X = [e for e in D if 'a' in e and 'b' not in e and 'f' not in e                         or 'd' in e and 'c' not in e and 'e' not in e]    E = [d for d in D if d not in X]    L = list('abcdef')*2    A = [L[i:j] for i in range(len(L)) for j in range(i+1,len(L)+1) if len(L[i:j])<7]    B = list(set([''.join(sorted(a)) for a in A]))    F = sorted(B + E)    print('可表達字符總數:',len(F))    print('所有組合的列表:',F)

運行結果

可表達字符總數: 80
所有組合的列表: ['a', 'ab', 'abc', 'abcd', 'abcde', 'abcdef', 'abcdefg', 'abcdeg', 'abcdf', 'abcdfg', 'abcdg', 'abcef', 'abcefg', 'abceg', 'abcf', 'abcfg', 'abcg', 'abdef', 'abdefg', 'abdeg', 'abef', 'abefg', 'abeg', 'abf', 'abfg', 'abg', 'acdef', 'acdefg', 'acdfg', 'acefg', 'acfg', 'adef', 'adefg', 'aef', 'aefg', 'af', 'afg', 'b', 'bc', 'bcd', 'bcde', 'bcdef', 'bcdefg', 'bcdeg', 'bcdfg', 'bcdg', 'bcefg', 'bceg', 'bcfg', 'bcg', 'bdefg', 'bdeg', 'befg', 'beg', 'bfg', 'bg', 'c', 'cd', 'cde', 'cdef', 'cdefg', 'cdeg', 'cdfg', 'cdg', 'cefg', 'ceg', 'cfg', 'cg', 'd', 'de', 'def', 'defg', 'deg', 'e', 'ef', 'efg', 'eg', 'f', 'fg', 'g']

解題思路

分兩類進行分別計算:第一類是g段處于點亮狀態,即在'abcdefg'中取出所有字母組合,但要排除不包含g的,排除后有64種;最后還要排除含a但不含b或f的、含d但不含c或e的共15個(“有了a但沒有b或f就形成ag不連通”,另一個同理),排除后共49種組合。
第二類是g段不點亮狀態即不包含g段,可以看作a~f組成的是一個環(零),所以需要在雙倍長度的字符串'abcdefabcdef'中取出所有長度為1~6的所有子串,共有57種;每個字串內部作排序后再去重,留下31種組合。這樣,兩類總共合計有80種組合。

歡迎加入CSDN社區!https://bbs.csdn.net/forums/PythonTogether

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/125085.html

相關文章

  • Python 進階之路 (八) 最心的推導詳解 (附簡單實戰及源碼)

    摘要:什么是推導式大家好,今天為大家帶來問我最喜歡的推導式使用指南,讓我們先來看看定義推導式是的一種獨有特性,推導式是可以從一個數據序列構建另一個新的數據序列的結構體。 什么是推導式 大家好,今天為大家帶來問我最喜歡的Python推導式使用指南,讓我們先來看看定義~ 推導式(comprehensions)是Python的一種獨有特性,推導式是可以從一個數據序列構建另一個新的數據序列的結構體。...

    hufeng 評論0 收藏0
  • 經驗拾憶(純手工)=> Python高階函數操作

    摘要:解釋就相當于把每個序列元素的每一個單獨用一個管道函數處理,再把他們按順序組合成一個新可迭代對象注意這個管道函數只能是單參數函數,如果想傳遞多個參數怎么辦使用偏函數怕有些人看不懂,這里就不用了,而是用普通函數定義方式固定值固定值固定值固定值固 map In [25]: list(map(lambda a:a**2, [1,2,3,4])) Out[25]: [1, 4, 9, 16] 解...

    Elle 評論0 收藏0
  • Python語言中計數方法的演變

    摘要:譯文鏈接編程派有時候,利用語言簡潔優雅地解決問題的方法,會隨著時間變化。隨著不斷進化,統計列表元素數量的方法也在改變。最后將字典中相應鍵的值設置為新的計數。我們發現這種方法比之前的代碼更加簡潔優雅,所以提交了此次修改。 showImg(https://segmentfault.com/img/remote/1460000010723715); 文中如對專業術語的翻譯有誤,請Pytho...

    sunsmell 評論0 收藏0
  • 編寫高效且優雅的 Python 代碼(1)

    摘要:查看原函數的參數注釋甚至函數名的時候,只能看到裝飾器的相關信息。也就是說,它是裝飾器的裝飾器,并且以原函數為參數,作用是保留原函數的各種信息,使得我們之后查看被裝飾了的原函數的信息時,可以保持跟原函數一模一樣。 貌似只能創建一個專欄,所以這篇文章只好放到JavaScript從前端到全終端里了? 原文鏈接:Effective Python Python 作為一門入門極易并容易上癮的語...

    roadtogeek 評論0 收藏0

發表評論

0條評論

最新活動
閱讀需要支付1元查看
<