`

Python function

 
阅读更多

原创转载请注明出处:http://agilestyle.iteye.com/blog/2327737

 

调用函数

# abs()
print(abs(100))
print(abs(-20))
print(abs(12.34))
# max()
print(max(1, 2))
print(max(2, 3, 1, -5))
# int()
print(int('123'))
print(int(12.34))
# float()
print(float('12.34'))
# str()
print(str(1.23))
print(str(100))
print(isinstance(str(1.23), str))
print(isinstance(str(100), str))
# bool()
print(bool(1))
print(bool(''))

Console Output

 

定义一个空函数 —— pass

# 空函数 —— 如果想定义一个什么事也不做的空函数,可以用pass语句
def nop():
    pass

 

参数检查 —— isinstance()

# 参数检查
def my_abs(x):
    if not isinstance(x, (int, float)):
        raise TypeError('invalid data type')
    if x >= 0:
        return x
    else:
        return -x


print(my_abs(-10))
print(my_abs('test'))

Console Output


 

返回多个值

import math


# 函数可以同时返回多个值,但其实就是一个tuple
def move(x, y, step, angle=0):
    a = x + step * math.cos(angle)
    b = y - step * math.sin(angle)
    return a, b


r = move(100, 100, 60, math.pi / 6)
print(r)

Console Output


 

递归函数

# 递归函数
def fact(n):
    if n == 1:
        return 1
    return n * fact(n - 1)

print(fact(1))
print(fact(5))
print(fact(100))

Console Output


Note:

  • 使用递归函数的优点是逻辑简单清晰,缺点是过深的调用会导致栈溢出。
  • 针对尾递归优化的语言可以通过尾递归防止栈溢出。尾递归事实上和循环是等价的,没有循环语句的编程语言只能通过尾递归实现循环。
  • Python标准的解释器没有针对尾递归做优化,任何递归函数都存在栈溢出的问题。 

 

 

 

 

 

 

  • 大小: 16.6 KB
  • 大小: 7.4 KB
  • 大小: 10 KB
  • 大小: 10.5 KB
分享到:
评论

相关推荐

    Passing arguments to Python functions

    ### Python 函数传参详解 在 Python 编程语言中,函数是代码组织的重要组成部分,而函数参数则是函数与外部程序交互的关键。本文将详细解释 Python 函数中的三种不同的参数传递方式:无星号参数、单星号参数(*args...

    4.2、Python Function and Error(二).mp4

    Python零基础10天进阶班【基础下】

    4.1、Python Function and Error(一).mp4

    Python零基础10天进阶班【基础下】

    4.4、Python Function and Error(四).mp4

    Python零基础10天进阶班【基础下】

    4.3、Python Function and Error(三).mp4

    Python零基础10天进阶班【基础下】

    Functional Python Programming

    《Functional Python Programming》是Steven Lott撰写的一本关于Python函数式编程的专业书籍,由Packt Publishing出版。这本书涵盖了如何在Python编程中应用函数式编程思想,以提高代码的可读性、可维护性和效率。...

    第五章Python循环习题及答案--中文

    ### Python 循环知识点解析 #### 5.2 节 while 循环 ##### 题目 5.1 **题目描述:** ```python count = 0 while count print("Welcome to Python") count += 1 ``` **问题:** 以上代码会打印“Welcome to ...

    《Python编程案例教程》教案第15课Python中函数的使用.docx

    - **function_name**: 函数名,遵循 Python 标识符命名规则。 - **parameter_list**: 形式参数列表,可以为空。 - **function_body**: 函数体,即执行的代码块。 - **注意**: - 即使没有参数,也需要一对空的圆...

    调用python函数.doc

    在给定的部分内容中,提到了在`cd $HOME/bin`目录下创建一个名为`python`的目录,然后在该目录下创建一个名为`function.py`的脚本。这个过程涉及到了在操作系统中创建目录和文件的基本操作,对于初学者来说,这也是...

    Packt.Python.for.Finance.2nd.Edition.2017

    - **Writing a Python Function**: Functions are a core component of programming, enabling developers to organize code into reusable blocks. This chapter explains how to define functions and pass ...

    Python库 | qfunction-1.0.1641-py3-none-any.whl

    `qfunction`是一个Python库,根据提供的信息,它的版本为1.0.1641,适用于Python 3环境,且对操作系统没有特定的要求,因此可以在多种系统上运行。 `qfunction`库可能包含了各种函数或模块,旨在解决特定的问题或...

    【pythonPHP】Python中函数详解.docx.docx

    ### Python中的函数详解 #### 一、什么是函数 在Python编程中,函数是一种重要的编程结构,它可以被看作是一段可重用的代码块,用于执行特定任务。通过定义函数,我们可以将复杂的逻辑分解成更小、更易于管理的...

    VS2010工程python结合c++开发demo

    {"callPyFunction", callPyFunction, METH_VARARGS, "Call a Python function."}, {NULL, NULL, 0, NULL} /* Sentinel */ }; PyObject* m = Py_InitModule("call_py_test", methods); if (m == NULL) return; ...

    Functional_Python_Programming

    evaluation—often encapsulated in function definitions. It de-emphasizes or avoids the complexity of state change and mutable objects. This tends to create programs that are more succinct and ...

    等考二级python-第4章-函数和代码复用.ppt

    【全国计算机等级考试二级教程Python 语言程序设计】的第4章主要讲解了函数和代码复用的概念,这是Python编程中的关键部分。本章详细介绍了如何定义和使用函数,以及函数参数传递的不同方式,包括可选参数传递和参数...

    python求最小值_function_python_

    标题"python求最小值_function_python_"表明我们将讨论使用Python函数来寻找函数的最小值。这通常涉及到数值优化的方法,例如梯度下降、牛顿法或线性搜索等。但在这个场景中,描述提到的是“利用自编函数获取函数...

    Python-V8Py使用V8引擎从JavaScript中调用PythonAPI

    在这个例子中,`python_function`是我们定义的Python函数,我们将其绑定到JavaScript的全局对象`pythonApi`,这样JavaScript就可以访问这个函数了。 **从JavaScript调用Python API** 一旦Python API被暴露给...

    在PB中实现热键的方法

    FUNCTION Integer GlobalAddAtom(ref string lpString) LIBRARY "kernel32.dll" ALIAS FOR "GlobalAddAtomA" FUNCTION ulong RegisterHotKey(ulong hwnd, ulong id, ulong fsModifiers, ulong vk) LIBRARY "user32....

    code_python故障诊断_python故障_fault_故障诊断_python_

    在Python编程过程中,故障诊断是不可或缺的一个环节,它关乎到代码的健壮性和问题的快速定位。本资源集合提供了一些基于Python的故障诊断程序,旨在帮助故障诊断学者深入理解和实践这一领域。以下将详细探讨Python...

    给出一个任意数,求它的阶乘

    为了优化代码,还可以考虑使用Python的内置`math`库,它已经提供了计算阶乘的功能,只需一行代码即可完成任务: ```python import math def factorial(n): return math.factorial(n) ``` 这种方法简洁高效,但需要...

Global site tag (gtag.js) - Google Analytics