• 函数


    函数是一段代码的表示
    def <函数名>(<参数(0个或多个)>):#()必须有
          <函数体>
          <返回值>
    参数(<非可选参数>,<可选参数>)#可选在后面
    def fac(n,m=2):
        sum =1
        for i in range(1,n+1):
            sum*=i
        return sum//m
    print(fac(5)) 60
    print(fac(5,3)) 40 #1.位置传递,2.fac(m==3,n==5)名称传递 参数传递的2种方式
    def fac(n,*m):# *m 为可变参数,数量不确定
        sum =1
        for i in range(1,n+1):
            sum*=i
        for j in m:
            sum*=j
            print(j,sum)
        return sum
    fac(5,3,2,6)
    3 360
    2 720
    6 4320
    函数可以没有返回值,return 用来传递返回值, 可以没有return .
    return 可以传递0个返回值,也可以传递任意多个返回值
    >>> def fac(n,m=2):
        sum =1
        for i in range(1,n+1):
            sum*=i
        return sum//m,n,m
    >>> fac(10,5)
    (725760, 10, 5)
    a,b,c = fac(10,5)
    print(a,b,c)
    725760 10 5
    n,s = 10,100 #n,s 为全局变量
    def fac(n):
        s =1  #fac()函数里的n,s为局部变量
        for i in range(1,n+1):
            s*=i
        return s
    print(fac(n),s) #n,s 为全局变量
    3628800 100
    
    
    函数运算结束后,局部变量被释放
    可以使用global 保留字在函数内部使用全局变量
    n,s = 10,100
    def fac(n):
        global s #s 为全局变量
        for i in range(1,n+1):
            s*=i
        return s
    print(fac(n),s)
    362880000 362880000
    
    局部变量为组合数据类型且未创建,等同于全局变量
    ls = ['d','w']
    def f(a):
        ls.append(a)
        return
    f('g')
    print(ls)
    ['d', 'w', 'g']

    ls = ['s','e']
    def f(a):
    ls=[]
    ls.append(a)
    print(ls)
    f('v')
    print(ls)

    ['v']
    ['s', 'e']

    7星管绘制时间

     1 import turtle,time
     2 def drawgap():
     3     turtle.pu()
     4     turtle.fd(5)
     5 def drawline(draw):
     6     drawgap()
     7     turtle.pd() if draw else turtle.pu()
     8     turtle.fd(40)
     9     drawgap()
    10     turtle.rt(90)
    11 def drawdigit(digit):
    12     drawline(True) if digit in [2,3,4,5,6,8,9] else drawline(False)
    13     drawline(True) if digit in [0,1,3,4,5,6,7,8,9] else drawline(False)
    14     drawline(True) if digit in [0,2,3,5,6,8,9] else drawline(False)
    15     drawline(True) if digit in [0,2,6,8] else drawline(False)
    16     turtle.lt(90)
    17     drawline(True) if digit in [0,4,5,6,8,9] else drawline(False)
    18     drawline(True) if digit in [0,2,3,5,6,7,8,9] else drawline(False)
    19     drawline(True) if digit in [0,1,2,3,4,5,7,8,9] else drawline(False)
    20     turtle.lt(180)
    21     turtle.pu()
    22     turtle.fd(10)
    23 def drawdate(date):
    24     turtle.pencolor('red')
    25     for i in date:
    26         if i =='-':
    27            turtle.write('',font=('Arial',18,'normal'))
    28            turtle.pencolor('green')
    29            turtle.fd(40)
    30         elif i =='=':
    31            turtle.write('',font=('Arial',18,'normal'))
    32            turtle.pencolor('blue')
    33            turtle.fd(40)
    34         elif i =='+':
    35            turtle.write('',font=('Arial',18,'normal'))
    36         else:
    37             drawdigit(eval(i))
    38 def main():
    39     turtle.setup(800,350,200,200)
    40     turtle.pu()
    41     turtle.fd(-300)
    42     turtle.pensize(5)
    43     drawdate(time.strftime('%Y-%m=%d+',time.gmtime()))
    44     turtle.hideturtle()
    45     turtle.done()
    46 main()
    #判断素数
    def prime(m):
        if m < 2:
            return False#首字母大写
        else:
            end = int(pow(m, 0.5) + 1)
            for i in range(2, end):
                if m%i == 0:
                    return False
            else:
                return True
    #连续乘法
    '''
    def cmul(s):
        sum =1
        for i in s:
            if i!=',':
                sum*=int(i)
        return sum
    s = input()
    sum = cmul(s)
    print(sum)
    '''
    def cmul(a, *b):
        m = a
        for i in b:
            m *= i
        return m
    print(eval("cmul({})".format(input())))
    1,2,3,4,5
    120
    def dayup(df):
        daup = 1
        for i in range(365):
            if i%7 in [0,6]:
                daup = daup*(1-0.01)
            else:
                daup = daup*(1+df)
        return daup#空格一定要合适
    daf = 0.01
    while dayup(daf) < 37.78:
           daf+=0.001
    print("{:.3f}".format(daf))
  • 相关阅读:
    简单工厂模式
    1.go的Hello
    Scrapy003-项目流程
    Django1.9开发博客(6)- 模板继承
    Django开发博客- 页面美化
    Django开发博客- 三部曲
    Django开发博客- 部署
    Django开发博客- 模型
    Django开发博客 入门篇
    内装式模块
  • 原文地址:https://www.cnblogs.com/tingtin/p/11700519.html
Copyright © 2020-2023  润新知