python定义x_Python 定义函数(示例代码)

本文详细介绍了Python中的函数使用,包括如何调用内置函数如`abs`和`max`,数据类型转换,以及如何定义自定义函数。在定义函数时,我们学习了`def`关键字、参数传递和`return`语句。此外,还讨论了在函数中进行参数检查的重要性,例如使用`isinstance`来确保输入参数的正确类型。最后,展示了如何通过`raise`抛出错误并处理异常情况。
摘要由CSDN通过智能技术生成

1函数

1.1调用函数

要调用一个函数,需要知道函数的名称和参数。

abs绝对值函数

>>> abs(-10)

10

>>> abs(-213)

213

max最大值函数

>>> max(-1,2,5)

5

数据类型转换

>>> int(12.3)

12

>>> int(‘12.3‘) --转换带有小数的整数字符串时,会报错

Traceback (most recent call last):

File "", line 1, in

ValueError: invalid literal for int() withbase 10: ‘12.3‘

>>>int(‘12‘) --转换不带有小数的整数字符串时,会报错

12

>>>int(float(‘12.3‘)) --借助float函数可实现转换

12

>>> float(‘12.3‘)

12.3

>>> str(12.3) --字符串函数

‘12.3‘

>>> str(100)

‘100‘

>>> bool(1)

True

>>> bool(0)

False

>>> bool(‘‘)

False

1.2定义函数

在Python中,定义一个函数要使用def语句,依次写出函数名、括号、括号中的参数和冒号:,然后,在缩进块中编写函数体,函数的返回值用return语句返回。

def my_abs(x):

if x >= 0:

return x

else:

return –x

函数体内部的语句在执行时,一旦执行到return时,函数就执行完毕,并将结果返回。

如果没有return语句,函数执行完毕后也会返回结果,只是结果为None。

return None可以简写为return。

1.2.1交互式环境中

>>> def my_abs(x):

... if x>= 0:

... return x

... if x< 0:

... return -x

... –需要两次回车键

>>> my_abs(-1)

1

>>> my_abs(-8.1)

8.1

在Python交互环境中定义函数时,注意Python会出现...的提示。函数定义结束后需要按两次回车重新回到>>>提示符下

1.2.2非交互式环境

[[email protected] python]# vi my_abs.py

#!/usr/bin/python

# -*- coding:utf-8 -*-

def my_abs(x):

if x >= 0:

return x

else:

return –x

>>> from my_abs import my_abs --第一个my_abs是py文件,第二个my_abs是函数

>>> my_abs(-1)

1

1.2.3空函数

定义一个空函数

>>> def pop():

... pass --pass表示什么也不做,也可用于if判断中,和plsql中的null类似

...

>>> pop()

>>>

1.2.4参数检查

升级my_abs函数,对输入参数进行检查

>>> def my_abs1(x):

... if not isinstance (x,(int,float)): -- isinstance用于数据检查

... raise TypeError(‘Bad oprand type‘)

... if x >=0:

... print(x)

... if x <0:

... print(-x)

...

>>>

>>> my_abs1(‘Y‘)

Traceback (most recent call last):

File "", line 1, in

File "", line 3, in my_abs1

TypeError: Bad oprand type

1.2.5函数返回多个值

[[email protected] python]# cat move.py

#!/usr/bin/python

# -*- coding:utf-8 -*-

import math

def move(x,y,step,angle=0):

nx = x + step * math.cos(angle)

ny = y + step * math.sin(angle)

return nx, ny

>>> import math

>>> t=move(100, 100, 60,math.pi/6)

>>> print(t)

(151.96152422706632, 130.0) --本质上,返回的是一个tuple

>>> x, y = move(100, 100, 60,math.pi/6) --多个变量按位置赋值

>>> print(x, y)

151.96152422706632 130.0

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值