最新消息:XAMPP默认安装之后是很不安全的,我们只需要点击左方菜单的 "安全"选项,按照向导操作即可完成安全设置。

python进阶语法之*arg和**kwarg的用法

XAMPP下载 admin 1757浏览 0评论

f00000000059

hello大家好,我是你们的小编安仔。

今天给大家带来python的进阶语法之*arg和**kwarg的用法。

*args:可以理解为只有一列的表格,长度不固定。
**kwargs:可以理解为字典,长度也不固定。

安仔在这里举一个例子来说明*args的用法。

写一个简单的加法函数:Jiafa函数

def Jiafa(x, y):
    z = x + y
    return z
print(Jiafa(1,2))

这个很简单,一看就知道输出等于3。

 

那么如果要算不固定个数的数字相加,那怎么来计算呢?

接下来可以使用*args来重新定义Jiafa函数:

def Jiafa(*args):
    sum = 0
    for i in args:
        sum = sum + i
    print(sum)

Jiafa(1, 3, 5)
Jiafa(2, 4, 6, 8 )

输出结果,9和20。

 

安仔在这里举一个例子来说明**kwargs的用法。

写一个测试单词的小程序。

dict = {"system": "系统", "China": "中国", "link": "联接"}
 
# 通过Key找value的语句:
y = input("请输入China的中文意思:")
if dict['China'] == y:
    print("恭喜你,答对了!")

# 通过value找Key的语句:
z = input("请输入“系统”的英文单词:")
if list(dict.keys())[list(dict.values()).index("系统")] == z:
    print("恭喜你,答对了!")

如果开始不知道字典里都有哪些内容,需要在程序运程中才知道怎么办?

这个时候就可以用**kwargs来定义了。

def dict(**kwargs):
    return kwargs
 
mydict = dict(system="系统", China="中国", link="联接")
x = input("请输入单词:")
if x in mydict.keys():
    print("中文意思:", mydict[x])
else:
    print("抱歉,没找到。")

安仔再使用**kwargs传递数据的案例,再设计一个用户登录的小程序。

def dict(**kwargs):
    return kwargs
 
userdict = dict(user1="1234", user2="5678")
 
x = input("请输入用户名:")
if x in userdict.keys():
    y = input("请输入密码:")
    if userdict[x] == y:
        print("完全正确")
    else:
        print("密码错误!")
else:
    print("用户不存在!")

安仔用简单一些的代码来表达出*args和**kwarg的功能和用法。 也希望大家在学会python的初步功能后,继续进阶,加油!

转载请注明:XAMPP中文组官网 » python进阶语法之*arg和**kwarg的用法

您必须 登录 才能发表评论!