更多课程 选择中心


Python培训

400-996-5531

Python程序员的进化

  • 发布:Python培训
  • 来源:跟我学Python
  • 时间:2022-09-19 17:59

下面这篇是关于Python程序员的。以阶乘为例,很有意思,来看看吧。

新手程序员

def factorial(x):

if x == 0:

return 1

else: return x * factorial(x - 1)

print factorial(6)

第一年刚学完Pascal的新手

def factorial(x):

result = 1

i = 2

while i <= x:

result = result * i

i = i + 1

return result

print factorial(6)

第一年刚学完C语言的新手

def fact(x): #{

result = i = 1;

while (i <= x):

#{ result *= i; i += 1;

#} return result;#}

print(fact(6))

第一年刚学完SICP的新手

@tailcall

def fact(x, acc=1):

if (x > 1):

return (fact((x - 1), (acc * x)))

else: return acc

print(fact(6))

第一年刚学完Python的新手

def Factorial(x):

res = 1

for i in xrange(2, x + 1):

res *= i return res

print Factorial(6)

爱偷懒的程序员

def fact(x):

return x > 1 and x * fact(x - 1) or 1

print fact(6)

更懒的 Python 程序员

f = lambda x: x and x * f(x - 1) or 1print f(6)

Python 

import operator as op

import functional as f

fact = lambda x: f.foldl(op.mul, 1, xrange(2, x + 1))

print fact(6)

Python 黑客

import sys

@tailcall

def fact(x, acc=1): if x: return fact(x.__sub__(1), acc.__mul__(x))

return acc

sys.stdout.write(str(fact(6)) + '\n')

级程序员

import c_math

fact = c_math.fact

print fact(6)

英语系的程序员

import c_maths

fact = c_maths.fact

print fact(6)

Web 设计者

def factorial(x):

#-------------------------------------------------

#--- Code snippet from The Math Vault ---

#--- Calculate factorial (C) Arthur Smith 1999 ---

#-------------------------------------------------

result = str(1)

i = 1 #Thanks Adam

while i <= x:

#result = result * i #It's faster to use *=

#result = str(result * result + i)

#result = int(result *= i)

#?????? result str(int(result) * i)

#result = int(str(result) * i) i = i + 1 return result

print factorial(6)

Unix 程序员

import os

def fact(x):

os.system('factorial ' + str(x))

fact(6)

Windows 程序员

NULL = None

def CalculateAndPrintFactorialEx(dwNumber,

hOutputDevice,

lpLparam,

lpWparam,

lpsscSecurity,

*dwReserved):

if lpsscSecurity != NULL:

return NULL #Not implemented

dwResult = dwCounter = 1

while dwCounter <= dwNumber:

dwResult *= dwCounter

dwCounter += 1

hOutputDevice.write(str(dwResult))

hOutputDevice.write('\n')

return 1import sysCalculateAndPrintFactorialEx(6, sys.stdout, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL)

免责声明:内容和图片源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

预约申请免费试听课

填写下面表单即可预约申请免费试听! 怕学不会?助教全程陪读,随时解惑!担心就业?一地学习,可全国推荐就业!

上一篇:学习Python必看的三本宝典
下一篇:给Python初学者的建议

数据分析师证书含金量高吗?

我国人工智能的发展现状及前景

目前AI已经用在哪些领域?

人工智能行业什么职位好入手?

Copyright © 2023 Tedu.cn All Rights Reserved 京ICP备08000853号-56 京公网安备 11010802029508号 达内时代科技集团有限公司 版权所有

选择城市和中心
黑龙江省

吉林省

河北省

湖南省

贵州省

云南省

广西省

海南省