#!/usr/bin/env python
# -*- coding: utf-8 -*-
# abs
print abs(-10)
# compare function. return -1 0 1
print cmp(1, 2)
# 数据类型转换
print int('123')
print int(12.2)
print float('12.23')
print str(1.23)
print unicode(100)
print bool(1)
print bool('')
# 给函数起别名
a = abs
print a(-12)
# define function
def my_abs(x):
if x > 0:
return x
else:
return -x
print my_abs(-1)
# 如果没有return语句,函数执行完毕后也会返回结果,只是结果为None。
# return None可以简写为return。
# 空函数 pass语句
def empty():
pass
# 判断条件中的pass
# if age > 10:
# pass
# 参数校验函数 & 异常
def my_valid_function(num):
if not isinstance(num, (int, float)):
raise TypeError('bad input type')
if num > 0:
return num
else:
return -num
print my_valid_function(1)
# 返回多个结果 返回的是一个tuple类型
def return_mutli_res():
return 1, 2
print return_mutli_res()
x, y = return_mutli_res()
print x
print y
# 默认参数
def def_parameter_function(x, y=2):
return x+y
print def_parameter_function(3)
print def_parameter_function(3, 3)
# 可变参数
def variable_parameter_function(*x):
sum = 0
for o in x:
sum = sum + o
return sum
print variable_parameter_function(1, 2, 3, 4, 5)
# list 作为可变参数
print variable_parameter_function(*[0, 1, 3])
# 关键字参数 可作为dict使用
def person(name, age, **kw):
print 'name:', name, 'age:', age, 'other:', kw
kw = {'city': 'Beijing', 'job': 'Engineer'}
person('Jack', 24, **kw)
# 参数定义的顺序:参数定义的顺序必须是:必选参数、默认参数、可变参数和关键字参数。
def func(a, b, c=0, *args, **kw):
print 'a =', a, 'b =', b, 'c =', c, 'args =', args, 'kw =', kw
args = (1, 2, 3, 4)
kw = {'x': 99}
func(*args, **kw)
# 所以,对于任意函数,都可以通过类似func(*args, **kw)的形式调用它,无论它的参数是如何定义的。
# 递归调用
def fact(n):
if n == 1:
return 1
return n * fact(n - 1)
Python学习笔记-第三天
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 操作目的:使用pip安装python第三方模块 操作尝试:在Python的解释环境IDLE中输入 提示错误: 错误...