【解决方案】报错:TypeError: touch() takes from 1 to 2 positional arguments but 3 were given

背景:这是我使用airtest IDE时出现的问题报错,因为touch图片时总会出现判断错误,所以我决定不使用点击图片这一方法,换成坐标系直接替换进去,但是替换途中出现了这个错误,我查了一下,然后写一篇解决方案

1、首先来看一下这个错误是什么

TypeError: touch() 接受 1 到 2 个位置参数,但给出了 3 个

根本原因:就是你填的参数和函数要求的格式不匹配(各种各样的不匹配),要么参数个数不对,要么参数格式不对

2、来看看这个函数

我这里是touch函数,你的任何函数报了这个错也都需要看你调用这个函数的描述是什么,usage是什么,看看他的参数列表以及具体使用说明

现在看一下我用到的touch()函数

他的参数列表是这样的,一共4个

【错误示范】:

我当时是这样写的touch((100,100),1,0.01)

【正确示范】:

严格按照他的参数描述来,默认的参数你可以不填,但是不能像我这样填错

【例1】touch((100,100)) # 这样就默认你只点击1次,每次按住0.01s

【例2】touch((100,100),times=1,duration=0.01) # 这样和例1一模一样

【例3】touch((100,100),times=1) # 也可以再省略一个默认参数

【例4】touch((100,100),times=2,duration=0.5) # 或者你干脆全部自定义一下,也是可以的

【总结】

python调用函数时,无论是否是默认参数都要看清楚用法说明,默认参数不额外配置的话最好不要写了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值