专栏首页不仅仅是python(八) 初遇python甚是喜爱之Functions函数操作

(八) 初遇python甚是喜爱之Functions函数操作

各位读者大大们大家好,今天学习python的Functions函数操作,并记录学习过程欢迎大家一起交流分享。

首先新建一个python文件命名为py3_function.py,在这个文件中进行操作代码编写:

#使用def关键字定义function函数
#使用pass关键字表示函数体中现在不写任何代码
#不会抛出任何错误
def hello_func():
    pass
#调用函数
#小括号要加上
print(hello_func())#None
#如果不加小括号
#代表是函数本身的信息
#不会执行函数
#<function hello_func at 0x00000000004A7F28>
print(hello_func)
#创建函数
def hello_func():
    print('Hello function!')
#直接调用函数
hello_func()
#函数的好处就是一次编写,多个地方调用,
# 修改的时候只修改函数体本身即可
#让函数返回一个值 使用return
def hello_func():
    return "Return Hello function!"
#定义一个变量接收并打印
hello_str =  hello_func()
print(hello_str)
#函数调用内置方法
print(hello_func().upper())
#定义带有参数的函数
def hello_func(greeting):
    return "{} function!".format(greeting)
print(hello_func("Hello"))
#定义参数含有默认值的函数
def hello_func(greeting,name='You'):
    return "{},{}!".format(greeting,name)
print(hello_func("Hello"))#Hello,You!
print(hello_func("Hello","Me"))#Hello,Me!
#定义一个可变参数的函数
#一个*开头代表普通参数
#两个**开头代表关键字参数
def my_info(*args,**keywordargs):
    print(args)
    print(keywordargs)
#传递参数调用
my_info('数学','语文',name='yale',age=25)
#打印结果:
#('数学', '语文')
#{'name': 'yale', 'age': 25}
#可以看出一个是list形式,一个是字典形式
#所以可以创建一个list和字典传递给函数:
course = ('数学', '语文')
info ={ 'name': 'yale', 'age': 25}
my_info(course,info)
#直接调用发现为返回的为{}
#因为需要对list和字典做拆包操作(unpack)
my_info(*course,**info)#得到正确结果

运行结果:

None
<function hello_func at 0x000000000388A620>
Hello function!
Return Hello function!
RETURN HELLO FUNCTION!
Hello function!
Hello,You!
Hello,Me!
('数学', '语文')
{'name': 'yale', 'age': 25}
(('数学', '语文'), {'name': 'yale', 'age': 25})
{}
('数学', '语文')
{'name': 'yale', 'age': 25}

看一个关于判断某一年是不是闰年,某年的某个月有多少天的函数案例:

#每个月份的天数,第一个值做占位使用
month_days = [0,31,28,31,30,31,30,31,31,30,31,30,31]

def is_leap(year):
    """如果是闰年返回True,否则返回False"""
    return year % 4 == 0 and (year % 100 != 0 or year % 400 != 0)

def days_in_month(year,month):
    if not 1 <= month <= 12:
        return "非法的月份"
    if month == 2 and is_leap(year):
        return 29
    return month_days[month]
# 调用函数
print(is_leap(2019))#False 不是闰年
print(is_leap(2020))#True 闰年
print(days_in_month(2019,2))#28
print(days_in_month(2020,2))#29
#

今天的初学python的 functions函数学习就到这里!

关注公号

下面的是我的公众号二维码图片,欢迎关注。

本文分享自微信公众号 - yale记(python_yale_learning),作者:yale记

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2019-05-18

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • (十八) 初遇python甚是喜爱之Slicing Lists and Strings 切片操作

    各位读者大大们大家好,今天学习python的Lists、Strings切片操作,并记录学习过程欢迎大家一起交流分享。

    亚乐记
  • (二十七) 初遇python OOP面向对象编程-继承

    各位读者大大们大家好,今天学习python的面向对象编程-继承,并记录学习过程欢迎大家一起交流分享。

    亚乐记
  • (十六) 初遇python甚是喜爱之异常处理Try/Except操作

    各位读者大大们大家好,今天学习python的异常处理操作,并记录学习过程欢迎大家一起交流分享。

    亚乐记
  • python 学习之 PythonAdv

    py3study
  • 学习Python第一步,变量与数据类型

    Python是一门易学的面向对象的程序设计语言,可以轻易地完成界面、文件、封装等高阶需求,可移植性好,有非常多功能强大的库与包,如Numpy(数值计算)、Sci...

    小雨编程
  • Python修饰符 (一)—— 函数修饰

    Python函数修饰符,“@”,与其说是修饰函数倒不如说是引用、调用它修饰的函数。

    py3study
  • python计算二次方程的实根

    week
  • node通过formidable上传图片模块功能实现

    用户1272076
  • python接口自动化测试-unittest-批量用例管理

    作者:Glen.He 出处:http://www.cnblogs.com/puresoul/

    测试小兵
  • 26.python all函数

    返回值:如果iterable迭代器中的所有元素全部都为真,返回true;反之返回false;

    猿说编程[Python和C]

扫码关注云+社区

领取腾讯云代金券