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

歡迎訪問 生活随笔!

生活随笔

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

python

python random函数_详细代码实战讲解:如何用 Python让自己变成天选之子

發布時間:2025/3/11 python 20 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python random函数_详细代码实战讲解:如何用 Python让自己变成天选之子 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

今天為大家帶來的內容是:詳細代碼講解:如何用 Python讓自己變成天選之子

話不多說直接上代碼:

請大家猜一猜下面這段代碼的運行效果:

你是不是以為這段代碼運行以后,結果如下圖所示?

但實際上,我可以讓輸出結果根據我的意愿隨意變動,例如像下面這個 gif ,所有輸出結果都是我:

你可以先不要往下看,放下手機,自己寫一下代碼,試一試 如何才能實現 gif 中的效果。

下面來為大家解密。

要實現這個效果,只需要兩個知識點:

  • Python自帶模塊是可以被覆蓋的
  • Python 的 import 在同一個運行時只會導入一次
  • 首先來看第一個知識點。Python 的自帶模塊是可以被覆蓋的,所以我們先來定義一個函數:

    def choice(option): return 'kingname'

    接下來,使用這個函數覆蓋random.choice:

    import randomrandom.choice = choice

    現在,無論給random.choice傳入什么參數,它始終都會返回kingname,運行效果如下圖所示:

    嗨嘍:正在學習python的小伙伴或者打算學習的,可以私信小編“07”領取資料!

    這個時候,你可能會說,那別人寫代碼的時候,又重新import random怎么辦呢?random.choice不是又被改回去了嗎?

    實際上并不會,因為Python 的包導入機制決定了,在每個運行時內部,每個包只有第一次導入的時候有效,所以只要還在當前運行時,那么后續的所有import random都是無效的。

    所以,即使重新導入了 random 模塊,random.choice依然是你修改以后的代碼。所以當你再次執行的時候,會發現返回的還是你想要的數據,如下圖所示:

    可能有人會說這樣容易被識破啊,別人只要先隨便寫一些測試數據,運行一次random.choice([123, 456]),發現返回的竟然是kingname,這不就露餡了嗎?

    實際上完全不用擔心,我們可以這樣操作:

  • 如果備選列表里面不包含kingname,那么就使用原生的 random.choice
  • 如果備選列表里面包含kingname,那么就以60%的概率返回kingname
  • 要實現這樣的功能,我們可以這樣寫代碼:

    首先重啟當前 Jupyter 內核,讓 random 恢復成默認的,然后編碼:

    這樣替換以后,當有kingname在備選列表中時,kingname被有60%的概率被選中,如下圖所示:

    當kingname不在備選列表中時,一切正常,如下圖所示:

    以上就是本文的全部內容啦!!!

    最后多說一句,小編是一名python開發工程師,這里有我自己整理了一套最新的python系統學習教程,包括從基礎的python腳本到web開發、爬蟲、數據分析、數據可視化、機器學習等。想要這些資料的可以關注小編,并在后臺私信小編:“07”即可領取。

    總結

    以上是生活随笔為你收集整理的python random函数_详细代码实战讲解:如何用 Python让自己变成天选之子的全部內容,希望文章能夠幫你解決所遇到的問題。

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