最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

如何用Pythony驗證萬物歸一(考拉咨猜想)

 更新時間:2021年06月18日 17:07:01   作者:一擼程猿  
考拉咨猜想簡單的來說,就是你隨便給我一個整數,我最后都是會通過固定的規(guī)則演變成"1",萬物歸一.今天我們就用那Python驗證一下這個猜想

規(guī)則

我拿到一個數number:

奇數則number= 3 * number + 1; 偶數則number= number // 2; 猜想:對于每一個正整數,如此循環(huán),最終都能夠得到1。

python驗證

#!/usr/bin/env python3
# coding=utf-8
__author__ = "RidingRoad"

START_NUMBER = 1
END_NUMBER = 1000001


def collatz_seq(number):
    """
    獲取到的number是奇數,則number=  3 * number + 1;
    偶數則number=  number // 2;
    如果考拉咨猜想真的成立,可以number=1,那么程序將會停止,否則,考拉咨猜想不成立
    :return:1
    """
    while True:
        if number == 1:
            return number
        else:
            # number為偶數
            if not number % 2:
                number = number // 2
            else:
                # number為奇數
                number = 3 * number + 1


if __name__ == "__main__":
    # 存放驗證考拉咨猜想函數的結果
    result = []
    for i in range(START_NUMBER, END_NUMBER):
        # 驗證START_NUMBER, END_NUMBER之間的數
        result.append(collatz_seq(i))
    # 顯示結果
    print(result)

下面是1到1000,000的數字進行考拉咨猜想驗證的結果

[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,......]

可以看到:萬里挑一啊, so easy

古人的猜想,如果還是基于傳統(tǒng)的計算工具,那是多么的無聊單調,我們可以用Python來瞬間完成,感謝龜叔哦.

這里我們就不自己肉眼判斷了,我們用filter

def verify(num):
    """判斷結果里的不是1的數"""
    return 1 != num

if __name__ == "__main__":
    # 存放驗證考拉咨猜想函數的結果
    result = []
    for i in range(START_NUMBER, END_NUMBER):
        # 驗證START_NUMBER, END_NUMBER之間的數
        result.append(collatz_seq(i))
    # 使用filter對結果進行判斷是否存在非1的數
    print(list(filter(verify,result)))
    """
        filter(function or None, iterable) --> filter object

        Return an iterator yielding those items of iterable for which function(item)
        is true. If function is None, return the items that are true.
    """

結果

[]

輸出了一個[]空列表,說明result列表里全部為一,考拉咨猜想是可能正確的.為什么說可能,是因為我只驗證了1到1000000的數字. 剩下的數字, 大家自己驗證一下(可能需要很長時間哦)!

以上就是如何用Pythony驗證萬物歸一(考拉咨猜想)的詳細內容,更多關于Pythony驗證萬物歸一(考拉咨猜想)的資料請關注腳本之家其它相關文章!

相關文章

  • Python入門教程(十二)Python列表

    Python入門教程(十二)Python列表

    這篇文章主要介紹了Python入門教程(十二)Python列表,Python是一門非常強大好用的語言,也有著易上手的特性,本文為入門教程,需要的朋友可以參考下
    2023-04-04
  • Python處理時間戳和時間計算等的腳本分享

    Python處理時間戳和時間計算等的腳本分享

    這篇文章主要為大家整理總結了5個實用的Python小,可以實現時間戳處理和時間計算。文中的示例代碼講解詳細,感興趣的小伙伴可以學習一下
    2022-07-07
  • 抵御代碼復雜性使python函數更加Pythonic技巧示例詳解

    抵御代碼復雜性使python函數更加Pythonic技巧示例詳解

    這篇文章主要介紹了抵御代碼復雜性使python函數更加Pythonic技巧示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2024-01-01
  • 關于jupyter代碼自動補全設置方式

    關于jupyter代碼自動補全設置方式

    這篇文章主要介紹了關于jupyter代碼自動補全設置方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-06-06
  • pycharm 的Structure界面設置操作

    pycharm 的Structure界面設置操作

    這篇文章主要介紹了pycharm 的Structure界面設置操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-02-02
  • 關于python 讀取csv最快的Datatable的用法,你都學會了嗎

    關于python 讀取csv最快的Datatable的用法,你都學會了嗎

    大家都知道Datatable與眾不同就是快,還有一點大家需要注意使用Datatable庫需要python3.6及以上版本,接下來通過本文給大家介紹了python 讀取csv最快的Datatable的用法,需要的朋友可以參考下
    2021-10-10
  • Python實現層次分析法及自調節(jié)層次分析法的示例

    Python實現層次分析法及自調節(jié)層次分析法的示例

    這篇文章主要介紹了Python實現層次分析法及自調節(jié)層次分析法的示例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-04-04
  • 淺析Python 實現一個自動化翻譯和替換的工具

    淺析Python 實現一個自動化翻譯和替換的工具

    這篇文章主要介紹了Python 實現一個自動化翻譯和替換的工具,非常不錯,具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-04-04
  • python sqlite的Row對象操作示例

    python sqlite的Row對象操作示例

    這篇文章主要介紹了python sqlite的Row對象操作,結合實例形式分析了Python使用sqlite的Row對象進行數據的查詢操作相關實現技巧,需要的朋友可以參考下
    2019-09-09
  • Python實現讀取Excel文件并復制指定的數據行

    Python實現讀取Excel文件并復制指定的數據行

    這篇文章主要介紹了如何基于Python語言,讀取Excel表格文件數據,并基于其中某一列數據的值,將這一數據處于指定范圍的那一行加以復制,感興趣的可以了解一下
    2023-07-07

最新評論

丰县| 沙田区| 盘山县| 双桥区| 庄浪县| 甘德县| 义马市| 浠水县| 宾川县| 高尔夫| 苍山县| 大足县| 博野县| 芜湖市| 扎兰屯市| 体育| 阳朔县| 星座| 山东省| 清流县| 义马市| 永春县| 花莲县| 汶川县| 高邮市| 建水县| 来安县| 湾仔区| 镇沅| 庐江县| 利川市| 峨山| 彭阳县| 通榆县| 鄂州市| 米林县| 原平市| 渭源县| 沙雅县| 阳东县| 石泉县|