#函数
def He(name):
print('你好,我的名字叫做{},来自新加坡'.format(name))
>>> He('加拿大炮王')
你好,我的名字叫做加拿大炮王,来自新加坡
#注释文档
def add(x,y):
'计算两个数的和'
return x+y
>>> print(add.__doc__)
计算两个数的和
>>> help(add)
Help on function add in module __main__:
add(x, y)
计算两个数的和[]
def test(flag):
print('这是在函数中打印的信息')
if flag:
return
print('这行信息只有在flag为false时才会输出')
test(False)
print('-'*10)
#函数参数
x=20
y='我是火车王'
def test(x,y):
x=100
y='im huochewang'
>>> test(x,y)
100 im huochewang
>>> x,y
(20, '我是火车王')
x={'a':30,'b':20}
y=['a','b','c']
def test1(x,y):
x['a']=100
y[1]='abcd'
>>> test1(x,y)
>>> x,y
({'a': 100, 'b': 20}, ['a', 'abcd', 'c'])
data={}
data['d']={}
data['name']=[]
data['products']=[]
print('请输入字典数据,key和value之间用逗号分隔')
dictStr=input(':')
list = dictStr.split(',')
keys=[]
values=[]
for i in range(len(list)):
#key
if i % 2 == 0:
keys.append(list[i])
else:
values.append(list[i])
data['d'].update(dict(zip(keys,values)))
print('请输入姓名,多个姓名之间用逗号隔开')
nameStr=input(':')
names=nameStr.split(',')
data['name'].extend(names)
print('请输入产品,多个产品之间用逗号隔开')
propertyStr=input(':')
propertys=propertyStr.split(',')
data['products'].extend(propertys)
for key in data.keys():
print(key,':',data[key])
#结果
请输入字典数据,key和value之间用逗号分隔
:help,帮助,commputer,计算机,world,世界
请输入姓名,多个姓名之间用逗号隔开
:bili,joho,mary
请输入产品,多个产品之间用逗号隔开
:book,bike,buul
d : {'help': '帮助', 'commputer': '计算机', 'world': '世界'}
name : ['bili', 'joho', 'mary']
products : ['book', 'bike', 'buul']
def init(date):
date['d']={}
date['name']=[]
date['price']=[]
def inputlist(flag,msg):
print(msg)
inputStr = input(':')
list = inputStr.split(',')
if flag:
return
keys=[]
resulf={}
values=[]
for i in range(len(list)):
#key
if i %2 == 0:
keys.append(list[i])
else:
values.append(list[i])
return dict(zip(keys,values))
def out (date):
for key in date.keys():
print(key,':',date[key])
data ={}
data1={}
init(data)
init(data1)
data['d'].update(inputlist(False,'请输入字典数据,key和value之间用逗号隔开'))
data['name'].extend(inputlist(True,'请输入姓名,多个姓名之间用逗号隔开'))
data['price'].extend(inputlist(True,'请输入产品,多个产品之间用逗号隔开'))
data1['d'].update(inputlist(False,'请输入字典数据,key和value之间用逗号隔开'))
data1['name'].extend(inputlist(True,'请输入姓名,多个姓名之间用逗号隔开'))
data1['price'].extend(inputlist(True,'请输入产品,多个产品之间用逗号隔开'))
out(data)
out(data1)
#输入参数
请输入字典数据,key和value之间用逗号隔开
:help,帮互,computer,计算机,world,世界
请输入姓名,多个姓名之间用逗号隔开
:bill,john,mary
请输入产品,多个产品之间用逗号隔开
:book,bike,iopd
请输入字典数据,key和value之间用逗号隔开
:nuw,新的,tset,测试,world,世界
请输入姓名,多个姓名之间用逗号隔开
:马云,马化腾,柳传志,扎克伯格
请输入产品,多个产品之间用逗号隔开
:手机,电脑,自行车,地铁,新干线咣当咣当
#结果
d : {'help': '帮互', 'computer': '计算机', 'world': '世界'}
name : ['bill', 'john', 'mary']
price : ['book', 'bike', 'iopd']
d : {'nuw': '新的', 'tset': '测试', 'world': '世界'}
name : ['马云', '马化腾', '柳传志', '扎克伯格']
price : ['手机,电脑,自行车,地铁,新干线咣当咣当']
#汉诺塔
def move(n,a,b,c):
#a,b,c分别是三根柱子,n为套在a柱上的圆圈个数
if n==1:
print(a,'-->',c)
return
move(n-1,a,c,b)
move(1,a,b,c)
move(n-1,b,a,c)
n = int(input('请输入一个整数'))
#角谷猜想
while True:
if n == 1:
print('1')
break
if n % 2 == 0:
a=n//2
print(n,'/ 2 = ',a)
n=a
else:
i=n*3+1
print(n,' * 3 =',n)
n=i
def geet(name,greeting):
return '{},我是{}!'.format(greeting,name)
>>> geet('李大锤','hello')
'hello,我是李大锤!'
>>> geet(name='李大锤',greeting='hello')
'hello,我是李大锤!'
>>> geet('王大锤',greeting='hello')
'hello,我是王大锤!'
def geet(name='bill',getting='hello'):
return '{},我的名字叫做{}'.format(getting,name)
>>> geet()
'hello,我的名字叫做bill'
def num1(x,y):
return x - y
>>> num1(20,5)
15
>>> num1(5,20)
-15
>>> num1(x=20,y=5)
15
>>> num1(y=5,x=20)
15
def num2(x=100,y=50):
return x - y
>>> num2()
50
>>> num2(80,30)
50
>>> num2(30,80)
-50
>>> num2(y=50,x=100)
50
>>> num2(50,y=100)
-50
>>> num2(y=100)
0
>>> num2(100,m=500)#抛出异常,系统不清楚m的值是100还是500
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: num2() got an unexpected keyword argument 'm'
def tset(*params):
print(params)
>>> tset('hello!,myname is bill,my phonenumber:111111')
('hello!,myname is bill,my phonenumber:111111',)
def test(*parmas):
for parma in parmas:
print('<' + str(parma) + '>',end=' ')
>>> test('呼呼呼呼呼呼呼','不要了','嘻嘻嘻嘻')
<呼呼呼呼呼呼呼> <不要了> <嘻嘻嘻嘻> >>>
def test(value,*parmas):
print('['+ value +']')
for parma in parmas:
print('<' + str(parma) + '>',end=' ')
>>> test('hello','my name is bill','but i dont like you ,do you konw')
[hello]
<my name is bill> <but i dont like you ,do you konw> >>>
def test(value,*parmas,value1,value2):
print('['+ value +']')
for parma in parmas:
print('<' + str(parma) + '>',end=' ')
print('{},我是{}'.format(value1,value2))
>>> test('hello','\n','哈哈哈哈',123456789,'我是火车王','\n',value1='救命',value2='非洲刘德华')
[hello]
<
> <哈哈哈哈> <123456789> <我是火车王> <
> 救命,我是非洲刘德华
def test(value,*parmas,value1=100,value2=200):
print('['+ value +']')
for parma in parmas:
print('<' + str(parma) + '>',end=' ')
print('{},我是{}'.format(value1,value2))
>>> test('hello','呼呼呼呼','我是火车王')
[hello]
<呼呼呼呼> <我是火车王> 100,我是200
def addnum(*num):
result=0
for number in num:
result += number
return result
>>> addnum(1,2,3,4,5,6)
21
def calculate(type,*number):
result=0
if type =='add':
for num in number:
result += num
elif type=='sub':
result=number[0]
for i in range(1,len(number)):
result -= number[i]
elif type=='mul':
result=1
for num in number:
result *= num
elif type =='div':
result=number[0]
for in in range(1,len(number)):
result /= number[i]
elif type =='exit':
break
else:
print('没有这项服务')
return result
def number(s1,s2):
print(s1,s2)
>>> number('hello','world')
hello world
>>> list=['hello','world']
>>> number(*list)
hello world
#传入列表参数
def number(*ss):
for s in ss:
print('<{}>'.format(s),end=' ')
>>> number(*'sadasf')
<s> <a> <d> <a> <s> <f> >>> number(*[1,2,3,5,6])
<1> <2> <3> <5> <6> >>>
>>> list=['hello','world']
>>> number(*list)
<hello> <world> >>>
#传入字典参数
def number(**ss):#加**号
for item in ss.items():
print('{} = {}'.format(item[0],item[1]))
>>> dict={'a':40,'b':50,'c':60}
>>> number(**dict)
a = 40
b = 50
c = 60
>>> number(**{'name':'bill','age':50})
name = bill
age = 50
def number(ss):#不加**号
for item in ss.items():
print('{} = {}'.format(item[0],item[1]))
>>> dict={'a':40,'b':50,'c':60}
>>> number(dict)
a = 40
b = 50
c = 60
>>> number({'name':'bill','age':50})
name = bill
age = 50
def add(x,y,z):
return x+y+z
>>> add(1,2,3)
6
>>> list=[1,2,3]
>>> add(*list)
6
>>> dict={'x':1,'y':2,'z':3}
>>> add(**dict)
6
#列表
def add2(*numbers):
ruselt=0
for number in numbers:
ruselt += number
return ruselt
>>> add2(1,2,3,4,5,6)
21
>>> add2(*list)
6
#字典
def add3(**numbers):
ruselt=0
for item in numbers.items():
ruselt += item[1]
return ruselt
>>> add3(**dict)
6
>>> dict
{'x': 1, 'y': 2, 'z': 3}
#普通
def add4(numbers):
ruselt=0
for item in numbers.items():
ruselt += item[1]
return ruselt
>>> add4(dict)
6
'''