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

Python 階乘詳解

 更新時間:2021年10月04日 14:47:17   作者:科學(xué)的海洋  
這篇文章主要介紹了詳解用python的階乘,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

相信大家對階乘都不陌生。不知道階乘的可以看這里:

一個數(shù)的階乘:

在這里插入圖片描述

比如5的階乘

在這里插入圖片描述

在python中大部分教程一般推薦用遞歸函數(shù)完成:

#!/usr/bin/python3
"""Python2,3都可以"""
def factorial(n):#主體函數(shù)
    if n == 1:
        return 1
    return n * factorial(n-1)
res = input("請輸入n:")
print(factorial(res))

但是這樣不僅閱讀不方便,還有可能在n非常大時造成棧溢出的情況。

>>> factorial(1000)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "<stdin>", line 4, in factorial
  File "<stdin>", line 4, in factorial
  File "<stdin>", line 4, in factorial
  [Previous line repeated 995 more times]
  File "<stdin>", line 2, in factorial
RecursionError: maximum recursion depth exceeded in comparison

所以我更傾向于這個:

#!/usr/bin/python
li = []
def factorial(n):
    global li
    result = 1
    for i in range(n):
        li.append(i+1)
    for j in li:
        result = result * j
    return result
print(factorial(int(input("請輸入n:"))))

通過單一列表存儲,可以有效減少內(nèi)存使用,并且這個調(diào)用只占用幾個棧,不會造成溢出。

或者math模塊中也有函數(shù)可以使用:

import math
a = input("N:")
fac = math.factorial(a)
print(fac)

要么就是非常簡單的for:

#中文變量名是合法的!
#中文變量名是合法的!!
#中文變量名是合法的!!!
數(shù) = input("數(shù):")
a = 1
for i in range(1,數(shù)+1):
    a = a * i
print(a)

非常容易理解~

參考:https://docs.python.org/3

總結(jié)

本篇文章就到這里了,希望能夠給你帶來幫助,也希望您能夠多多關(guān)注腳本之家的更多內(nèi)容!

相關(guān)文章

  • 利用python控制Qt程序的示例詳解

    利用python控制Qt程序的示例詳解

    這篇文章主要為大家詳細介紹了如何利用python實現(xiàn)控制Qt程序,從而進行文本輸入,按鈕點擊等組件控制,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2023-08-08
  • Python驗證碼識別的方法

    Python驗證碼識別的方法

    這篇文章主要介紹了Python驗證碼識別的方法,涉及Python針對驗證碼圖片的相關(guān)分析與操作技巧,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-07-07
  • python 日志 logging模塊詳細解析

    python 日志 logging模塊詳細解析

    這篇文章主要介紹了python 日志 logging模塊 詳細解析,本文通過實例代碼給大家介紹的非常詳細,對大家的工作或?qū)W習(xí)具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-03-03
  • 淺析Django中關(guān)于session的使用

    淺析Django中關(guān)于session的使用

    這篇文章主要介紹了Django下關(guān)于session的使用,本文給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-12-12
  • python使用dabl幾行代碼實現(xiàn)數(shù)據(jù)處理分析及ML自動化

    python使用dabl幾行代碼實現(xiàn)數(shù)據(jù)處理分析及ML自動化

    這篇文章主要為大家分享一個名為?dabl?的開源?Python?工具包,它可以自動化機器學(xué)習(xí)模型開發(fā),包括數(shù)據(jù)預(yù)處理、特征可視化和分析、建模
    2021-11-11
  • python操作音視頻ffmpeg-python對比pyav選擇

    python操作音視頻ffmpeg-python對比pyav選擇

    這篇文章主要介紹了python操作音視頻的選擇:ffmpeg-python對比pyav,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-11-11
  • python中序列的逆序方式

    python中序列的逆序方式

    這篇文章主要介紹了python中序列的逆序方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-05-05
  • Python3.4編程實現(xiàn)簡單抓取爬蟲功能示例

    Python3.4編程實現(xiàn)簡單抓取爬蟲功能示例

    這篇文章主要介紹了Python3.4編程實現(xiàn)簡單抓取爬蟲功能,涉及Python3.4網(wǎng)頁抓取及正則解析相關(guān)操作技巧,需要的朋友可以參考下
    2017-09-09
  • 解決python 找不到module的問題

    解決python 找不到module的問題

    今天小編就為大家分享一篇解決python 找不到module的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-02-02
  • Pandas中Series的創(chuàng)建及數(shù)據(jù)類型轉(zhuǎn)換

    Pandas中Series的創(chuàng)建及數(shù)據(jù)類型轉(zhuǎn)換

    這篇文章主要介紹了Pandas中Series的創(chuàng)建及數(shù)據(jù)類型轉(zhuǎn)換,文章圍繞主題展開詳細的內(nèi)容介紹,具有一定的參考價值,需要的小伙伴可以參考一下
    2022-08-08

最新評論

北川| 泽库县| 来凤县| 安泽县| 丰镇市| 台中县| 故城县| 漳浦县| 嫩江县| 伊川县| 临桂县| 贵港市| 惠水县| 汶上县| 上杭县| 滨州市| 星子县| 齐河县| 平度市| 天津市| 虞城县| 蛟河市| 吴堡县| 江津市| 东港市| 华阴市| 林甸县| 沾益县| 平山县| 黄山市| 儋州市| 墨脱县| 白河县| 邢台县| 本溪| 敖汉旗| 宝山区| 吉林省| 玉田县| 宜都市| 牡丹江市|