# 调用函数
# Python内置了很多有用的函数,我们可以直接调用

# 要调用一个函数,需要知道函数的名称和参数,比如求绝对值的函数abs,只有一个参数。可以直接从Python的官网查看文档
# http://docs.python.org/3/library/functions.html#abs
# 也可以在交互式命令行通过help(abs)查看abs函数的帮助信息。

# 调用abs函数
print('abs(100)', abs(100))
print('abs(-20)', abs(-20))
print('abs(12.34)', abs(12.34))

# TypeError:abs() takes exactly one argument (2 given)
# print('abs(1, 2)', abs(1, 2))

# TypeError: bad operand type for abs(): 'str'
# print('abs("a")', abs("a"))

# max函数max()可以接收任意多个参数,并返回最大的那个
print('print max(1, 2)', max(1, 2))
print('print max(2, 3, 1, -5)', max(2, 3, 1, -5))

# 数据类型转换函数
# Python内置的常用函数还包括数据类型转换函数,比如int()函数可以把其他数据类型转换为整数
print('print int("123")', int("123"))
# 直接忽略小数点后面的
print('print int(12.34)', int(12.34))
print('print str(1.23)', str(1.23))
print('print str(100)', str(100))
print('print bool(1)', bool(1))
print('print bool('')', bool(''))

# 函数其实就是指向一个函数对象的引用,完全可以把函数名赋值给一个变量,相当于给这个函数起了一个"别名"
# 变量a指向abs函数
a = abs
# 通过a调用abs函数
print('print a(-1)', a(-1))