python入门----参数:函数,字符串

1, 字符串带参数:

string="{0}  is {1}"
string2="{name} is {something}"
string3="{0} is {1}  and {name} is {something}"

li=["朱元璋","皇帝"]
dic={"name":"张飞","something":"猛将"}

#多个str--------传参调用
result=string.format("lisi","worker")
print(result)                                            #lisi  is worker
#一个tuple--------传参调用
result=string.format(*li)                          
print(result)                                           #朱元璋  is 皇帝

#一个dict-------传参调用
result=string2.format(**dic)
print(result)                                           #张飞 is 猛将

#混合传参-----*args,**kwargs
result=string3.format(*li,**dic)
print(result)                                           #朱元璋 is 皇帝  and 张飞 is 猛将

2, 函数中的参数--默认参数,指定参数,可变参数

def  count():
    a=2
    a+=10
    b=1
    c=a+b
    print("%s+%s=%s"%(a,b,c))
#调用1
count()

#调用2:引用地址
f=count
f()
def add(num1,num2=0):#默认参数
    print("%s+%s两数的和:"%(num1,num2),num1+num2)

#顺序传参-------调用函数
a=add(1,100)                        #1+100两数的和: 101
#自由传参-------调用函数
b=add(num2=100,num1=9)  #9+100两数的和: 109
c=add(19)                            #19+0两数的和: 19

print(a,b,c)
可变参数: *ars,  **args

def say(name):
    print("hello ",name)               #hello  23

def say1(*args):
    print(type(args),   args)          #<class 'tuple'> (123, 234, 998, 235)

def say2(name,*args):                   
    print("name=",name,"args----",args)#name= 23 args---- (324, 435)

def say3(**args):
    print(type(args),  args)           #<class 'dict'> {'name': '32', 'age': 'lisi'}

def say4(*args,**args2):
    print(type(args),type(args2),  args,args2)
                          #class 'tuple'> <class 'dict'> (23, 'ksl', 'we342') {'name': 24, 'age': 'sdf'}

say(23)
say1(123,234,998,235)
say2(23,324,435)
say3(name="32",age="lisi")
say4(23,"ksl","we342",name=24,age="sdf")
def say(*args,**args2):
    print(type(args), args,    "\n" ,    type(args2),args2,"\n") 

li=[234,25,2342,23,6]
dic={"2":"a","3":"b"}

#方法调用type(args2)
say(li,dic)     #<class 'tuple'> ([234, 25, 2342, 23, 6], {'2': 'a', '3': 'b'}) 
                #<class 'dict'> {} 
say(*li,**dic)  #<class 'tuple'> (234, 25, 2342, 23, 6) 
                #<class 'dict'> {'2': 'a', '3': 'b'} 
say(234)     #<class 'tuple'> (234,) 
               #<class 'dict'> {} 
say({"a":"b","c":"d"},324,**dic)
                #<class 'tuple'> ({'a': 'b', 'c': 'd'}, 324) 
                #<class 'dict'> {'2': 'a', '3': 'b'} 
简单函数表达式: lambda 【相当于:一个关键字】

def say(name):
    print(name) 
say("lisi")         #lisi 

fun=lambda name,age: print(name,"are",age)
fun("you",33)       #you are 33





猜你喜欢

转载自blog.csdn.net/eyeofeagle/article/details/79335509