zoukankan      html  css  js  c++  java
  • python函数用法

      python函数用法比java更加灵活。支持可变参数与参数默认值:

        pass是空语句,为了保持结构完整性。

    # python函数练习
    # 1.python自带的一些常见函数的练习
    print(abs(-95))
    print(hash(-95))
    print("sssssssssssssssss"+str(95))
    
    
    # 2.自定义函数
    def my_abs(a):
        if a >= 0:
            return a
        else:
            return -a
    
    
    # 3.定义不带参数与返回值的函数(无返回值的函数类似于return None,可以简写为return)
    def print_star():
        print("***********")
    
    
    print_star()
    x=print_star() #实际返回的为None
    print(x)
    
    
    # 4.多个返回值的函数定义以及使用方法(实际返回的是一个tuple,用多个值获取tuple的时候实际是将每个tuple的元素赋给对应的值)
    def twoReturnValue():
        return 'a','b'
    
    x, y = twoReturnValue();
    print(x, y)
    value=twoReturnValue()
    print(value)
    
    
    
    # 5.递归函数的用法(自己调用自己的函数)
    # 5.1.计算裴波那契数列的第N个数字1 1 2 3 5 8 13 ...
    def count(index):
        if index == 1:
            return 1
        if index == 2:
            return 1
        return count(index-1)+count(index-2)
    
    print(count(7))
    # 5.2计算N的阶乘
    def jiecheng(n):
        if n==1:
            return 1
        else:
            return n*jiecheng(n-1)
    
    print(jiecheng(3))
    
    
    # 6.默认参数的用法
    # 6.1默认参数求n的x次方,如果不传入n的话默认为2
    def power(x, n=2):
        s=1
        while n > 0:
            s=s*x
            n=n-1
        return s
    print(power(5,3))
    print(power(5))
    
    # 可变参数的用法(实际传入的是一个集合)
    def fun3(*arg):
        print(len(arg))
        print(arg)
        for ele in arg:
            print(ele)
    
    fun3(1,5,8,5)
    
    
    
    # 定义一个空函数(pass关键字是空语句,是为了保持程序结构的完整性)
    def fun4():
        pass
    
    fun4()

    补充:python也有类似于java的main函数

    #主函数用法
    if __name__ == '__main__':
        print('这是主函数,类似于Java的main函数,是程序的入口')

    结果:

      这是主函数,类似于Java的main函数,是程序的入口

    Python作为一门较为灵活的解释型脚本语言,其中定义的main()函数只有当该Python脚本直接作为执行程序时才会执行;当该python脚本被作为模块(module)引入(import)时,其中的main()函数将不会被执行。

    Python单独的函数调用都是从上到下,从左到右,一般是先写函数,然后在下面按照顺序来调用(或者下面的调用上面的)。但是在class中函数的调用可以不按照顺序调用函数(这个仅仅在class中)。

    附一些函数练习题:

    # 函数部分练习题
    # 1.获取三个数字中最大的一个
    def fun1(a,b,c):
        if a >=b and a>=c:
            return a
        elif b >= c and b>= a:
            return b
        else:
            return c
    print(fun1(1,2,3))
    
    # 2.编写一个函数,将一个集合升序排列
    def fun2(list):
        for index2 in range(len(list)):
            for index22 in range(index2+1,len(list)):
                if list[index2] > list[index22]:
                    tmp=list[index2]
                    list[index2]=list[index22]
                    list[index22]=tmp
        return list
    
    print(fun2([1,6,9,8,5,6,96,5]))
    
    # 3.编写函数往集合中插入元素
    def fun3(list,element):
        list.append(element)
        return list
    
    print(fun3([1,2],5))
    
    
    # 4.编写函数,实现从控制台输入一个数字并在控制台打印
    def fun4():
        print("您输入的数字是:", input("请输入一个数字"))
    
    fun4()
    
    # 5.编写一个函数,实现将一个集合中的元素反转
    def fun5(list):
        tmpList=[]
        index5 = len(list)-1
        while index5>=0:
            tmpList.append(list[index5])
            index5 = index5-1
        return tmpList
    
    print(fun5([5,5,9,6,8,4]))
    
    
    # 6.编写函数,设置一个整数参数,如果传6,打印如下内容
    def fun6(num):
        for i in range(num):
            print(str(i)+"+"+str(num-i)+"="+str(num))
        print(str(num)+"+"+str(num-num)+"="+str(num))
    
    fun6(6)
    
    
    
    # 7、编写函数,实现登录验证功能,验证次数最多三次
    def fun7(name,password):
        for i in range(3):
            input_name=input("请输入用户名:")
            input_password=input("请输入密码:")
            if input_name == name and input_password==password:
                print("你牛逼")
                return
            else:
                print("输入错误!您还有"+str(2-i)+"次机会")
    
    fun7("n","p")
    
    
    # 8、编写函数,计算某个数的阶乘(递归函数的用法或者使用循环计算)
    def fun8(num):
        if num <1:
            print("请传递正数参数")
            return
        if num==1:
            return 1
        else:
            return num * fun8(num-1)
    
    print(fun8(6))
  • 相关阅读:
    单词篇:(单词应用10~11)
    单词篇:(单词识记11)
    单词篇:(单词识记10)
    单词篇:(单词识记8~9)
    单词篇:(单词应用9)
    单词篇:(单词识记8)
    单词篇:(单词应用6~7)
    单词篇:(单词识记7)
    单词篇:(单词识记6)
    单词篇:(单词应用4~5)
  • 原文地址:https://www.cnblogs.com/qlqwjy/p/8868859.html
Copyright © 2011-2022 走看看