#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""
Created on Sun Mar 24 17:55:30 2019
@author: sungang
"""
# 全局变量:全局(Scope)作用域
x = 10
def count(n = 12):
'''
全局变量与局部变量的使用和区别
global var 全局变量的声明
'''
# 局部(Local)作用域
num = n
# 声明x是全局的
global x
x = x + 1
print(x,':',num)
def sayhello():
print("hello world")
#比较两数的大小,并返回较大的数
def myMax(a,b):
'''
数字比较大小
'''
if(a > b):
return a
else:
return b
# 可变参数
def total(a = 10,*numbers,**phonebook):
'''
对于可变参数使用来说,* 开始的参数会全部存到一个元祖中,
** 开始的参数会全部存储到一个字典中
'''
print('a',a)
for i in numbers:
print('i',i)
# 遍历字典中的所有项目
for firstpart,secondpart in phonebook.items():
print(firstpart,secondpart)
print("可变参数函数调用over")
# 输出可变参数中最大数的函数
def MutilMax(num1,num2,*nums):
if(nums.__len__() == 0):
# 只有1个参数比较大小
return myMax(num1,num2)
else:
# 多个参数比较大小
maxnum = myMax(num1,num2)
for i in nums:
if( i > maxnum):
maxnum = i
return maxnum
# 递归
def pt(num):
print("current num:{0}".format(num))
num = num -1
if(num > 0):
return pt(num)
if __name__ == "__main__":
sayhello()
print(myMax(10,13))
for i in range(0,13):
count(12);
print('x is still %d'%(x))
x = x +20
print("current x is :{0}".format(x))
# 可变参数函数的调用
total(3,4,53,jack=234,jhone='dafd',inag='q3df')
# 递归函数的调用
pt(10)
# 打印输出文档字符串
print(count.__doc__)
print(myMax.__doc__)
# 输出给定的参数中最大的数字
print(MutilMax(12,10,34,24,6,78))