python3 中方法各种参数和返回值
生活随笔
收集整理的這篇文章主要介紹了
python3 中方法各种参数和返回值
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
# -*- coding:utf-8 -*-
# Author: Evan Mi# 函數def func1():print('in the func1')return 0# 過程def func2():print('in the func2')"""
多個值用逗號分割后返回,會分裝到一個tuple中返回,
接收的時候,如果使用一個變量接收,那么這個接收變量就是一個tuple類型的
如果接收的時候也用逗號分割多個值來接收,那么可以分別對應返回tuple中的每一個值
"""def func3():return 1, 'hello', ['alex', 'wupei'], {'name': 'alex'}x = func1()
y = func2()
z = func3() # 一個值接收,是一個tuple
q, w, e, r = func3() # 用對應個數的值接收,每個變量對應tuple對應位置的值
print(x)
print(y)
print(z)print("center".center(100, '*'))
print(q)
print(w)
print(e)
print(r)print("center".center(100, '*'))# 定義一個方法def test(x_arg, y_arg):print(x_arg)print(y_arg)test(1, 2) # 位置參數調用
test(y_arg=3, x_arg=5) # 關鍵字參數調用,直接給形式參數賦值def test1(x_arg, y_arg, z_arg):print(x_arg)print(y_arg)print(z_arg)# 關鍵字參數不能寫到位置參數之前
test1(1, z_arg=2, y_arg=3)# 默認值參數
def test2(x_arg, y_arg=2):print(x_arg)print(y_arg)print("center".center(100, '*'))
test2(1)
print("center".center(100, '*'))
test2(1, 3)
print("center".center(100, '*'))
test2(y_arg=5, x_arg=8)"""
在*args 前面有參數(x, *args),那么(1,2,3,4,5)正確,(x=1,2,3,4,5)正確,(2,3,4,5,x=1)錯誤,給x多次賦值了
在*args 后面有參數(*args,x,y)那么x,y只能采用關鍵字賦值方式(1,2,3,4,5,x=6,y=8)
"""def test3(*args):print(args)test3(1, 2, 3, 4, 5)
test3(*[1, 2, 3, 4, 5])
print("center".center(100, '*'))def test4(x_arg, *args):print(x_arg)print(args)test4(1, 2, 3, 4, 5)def test5(**kwargs):print(kwargs)print(kwargs['name'])test5(name='alex', age=8)
test5(**{'name': 'Evan', 'age': 8})def test6(*args, xx):print(args)print(xx)# **kwargs 必須在最后
# def test7(**kwargs,xx=3): 這樣定義是錯誤的print("test6")
# test6(1, 2, 3, 4, 5999, xx=4)
"""
*args 接收位置參數,轉換為tuple
**kwargs 接收關鍵字參數,轉換為dict
位置參數不能寫在關鍵字參數的后面
"""def tt(xx=1, *args, **kwargs):print(xx)print(args)print(kwargs)def ttt(xx, **kwargs):print(xx)print(kwargs)def tttt(*args, xx, **kwargs):print(args)print(xx)print(kwargs)# kwargs接收的關鍵字參數的名字不能和函數列表中已有的其他參數相同
# tt(2, 3, 4, 5, name=100, age=199, xx=98)
# 出現了xx,優先賦值給參數列表中的xx,而不是在dict中加入關鍵字為xx的key-value對
# ttt(x=99, y=99, xx=43)tttt(1,2,3,4,5,x=100,y=33,xx=8)
總結
以上是生活随笔為你收集整理的python3 中方法各种参数和返回值的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: activiti5第四弹----serv
- 下一篇: 《吴恩达深度学习》第一课第四周任意层的神