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

Python 階乘詳解

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

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

一個(gè)數(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("請(qǐng)輸入n:")
print(factorial(res))

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

>>> 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

所以我更傾向于這個(gè):

#!/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("請(qǐng)輸入n:"))))

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

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

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

要么就是非常簡(jiǎn)單的for:

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

非常容易理解~

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

總結(jié)

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

相關(guān)文章

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

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

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

    Python驗(yàn)證碼識(shí)別的方法

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

    python 日志 logging模塊詳細(xì)解析

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

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

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

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

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

    python操作音視頻ffmpeg-python對(duì)比pyav選擇

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

    python中序列的逆序方式

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

    Python3.4編程實(shí)現(xiàn)簡(jiǎn)單抓取爬蟲(chóng)功能示例

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

    解決python 找不到module的問(wèn)題

    今天小編就為大家分享一篇解決python 找不到module的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    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)換,文章圍繞主題展開(kāi)詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下
    2022-08-08

最新評(píng)論

鸡东县| 南乐县| 渭南市| 深圳市| 云安县| 贺兰县| 湟源县| 宁乡县| 曲麻莱县| 青冈县| 阳山县| 德安县| 霍林郭勒市| 徐闻县| 广宁县| 太保市| 漳州市| 汉中市| 铜陵市| 武威市| 德昌县| 夏邑县| 景东| 固原市| 社旗县| 凤阳县| 湟源县| 林西县| 奉新县| 元朗区| 城步| 嘉兴市| 兰考县| 佛山市| 手游| 聂荣县| 北宁市| 乌拉特中旗| 唐山市| 黄骅市| 佛坪县|