Python 板


LINE

想问一些关於parameter数量错误的问题 如果这样子打 x_train = x_train.apply(np.reshape, args=(60,60,1) ) 则会出现 TypeError:reshape() takes from 2 to 3 positional arguments but 4 were given 但是若改成 x_train = x_train.apply(np.reshape, args=((60,60,1),) ) 之後就可以了,有大大能帮我解惑吗 上网找一些资讯在後面加逗号似乎会把她变成一个tuple,想请问这个错误跟那个又关系吗 ,另外错误显示的那4个arguments是哪四个呢 --



※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 140.118.207.2
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Python/M.1536837246.A.B4D.html
1F:→ gmccntzx1: 你的第一个写法,给 np.reshape 的参数就是 3 个 09/13 23:55
2F:→ gmccntzx1: int: 60, 60, 1 09/13 23:55
3F:→ gmccntzx1: 修正,正确来说是 4 个,第一个参数由 df.apply 提供 09/13 23:57
4F:→ gmccntzx1: 即 np.reshape(x_train, 60, 60, 1) # <- 错误 09/13 23:58
5F:→ gmccntzx1: 请看 numpy.reshape 的文件: https://goo.gl/wRffJQ 09/13 23:59
6F:→ gmccntzx1: 然後 df.apply 的文件:https://goo.gl/BCkX83 09/14 00:03
7F:→ gmccntzx1: args要吃的参数型态就是 tuple 09/14 00:03
8F:→ gmccntzx1: 所以给参数的方式就像这样: args=(x, y, z, ...) 09/14 00:04
9F:→ gmccntzx1: 其中 x, y, z 可以是任何型态 (视对象 func 而给) 09/14 00:05
我前面第一行的程式若改成x_train = x_train.apply(np.reshape, args =((60,60,1)) )的话也会出现同样的错误耶 我也有上网先去看apply的文件我知道要传入tuple,但是若将(60,60,1)括号起来他不就也变成tuple了吗,为什麽还要一个逗号呢 ※ 编辑: worthy0429 (219.70.213.17), 09/14/2018 00:25:52
10F:→ gmccntzx1: 不,你看一下我上面的例子 args=(x, y, z...) 09/14 00:36
11F:→ gmccntzx1: 如果仅仅将 60, 60, 1 这三个数包起来,就代表你只给了 09/14 00:36
12F:→ gmccntzx1: 修正:就代表 args 拿到 3 个参数,分别为 60, 60, 1 09/14 00:38
13F:→ gmccntzx1: 写成 args=((60, 60, 1), ) 才表示 args 拿到一个参数 09/14 00:38
14F:→ gmccntzx1: 叫做 (60, 60, 1) 的 tuple 09/14 00:39
15F:→ gmccntzx1: 然後 trailing comma 可以看这篇解释 09/14 00:40
16F:→ gmccntzx1: https://stackoverflow.com/a/7992642 09/14 00:41
17F:→ gmccntzx1: 简单来说,如果你没有给 trailing comma, 仅有单一元素 09/14 00:42
18F:→ gmccntzx1: 的 tuple 会和 expression 混淆 09/14 00:43
19F:→ gmccntzx1: * generator expression 09/14 00:44
20F:→ gmccntzx1: 或是其他因为内容很长需要多行分段的 code 09/14 00:45
我有看到,就是a=(1)这样是int,a=(1),这样会是tuple,如果单一元素後面家要加逗号才会变tuple ,但是我在想args=(x,y,z),像我这样子(60,60,1)括号刮起来,不就等於x=(60,60,1)所以已经是tuple了不用再逗号了吧? 我就是一直卡在这边不好意思,我有听懂你那个3个int的说法,只是不太清楚为什麽有括号了还是3个int..,你刚传的那几个网址 我都有先看过了可是还是觉得卡卡的怪怪的想厘清一下自己的想法 ※ 编辑: worthy0429 (219.70.213.17), 09/14/2018 00:51:28
21F:→ gmccntzx1: 然後这个行为在 list, dict 上也可以用,但不加上也不 09/14 00:47
22F:→ gmccntzx1: 会影响 09/14 00:47
23F:→ gmccntzx1: 照你的例子来讲,`a=(1),` 和 `a=(1,)` 的 a 都是 09/14 01:05
24F:→ gmccntzx1: tuple 09/14 01:05
25F:→ gmccntzx1: 今天如果 args 只拿到 1 个参数,但你仍要确保 args 是 09/14 01:06
26F:→ gmccntzx1: tuple ,你要怎麽做? 09/14 01:07
27F:→ gmccntzx1: 情况就是 args=(x),x 可以是任何型别。 09/14 01:08
28F:→ gmccntzx1: https://repl.it/@naleraphael/GiveMeATuple 09/14 01:26
这个例子我有看懂,但是若是将里面的1全部改成'1,2',这样就会全部都是tuple呀,这跟我60,60,1是一样的吧.. ※ 编辑: worthy0429 (140.118.207.2), 09/14/2018 17:17:09 抱歉,真的很感谢你但是我是不是鬼打墙了QAQ ※ 编辑: worthy0429 (140.118.207.2), 09/14/2018 17:19:17 就是单一元素需要trail comma,但是60,60,1有三个元素哩 ※ 编辑: worthy0429 (140.118.207.2), 09/14/2018 17:20:39







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:Boy-Girl站内搜寻

TOP