https://repl.it/repls/PoorStupidDisassembler新增一个Class MyData,用这个去存你要的资料. 这样至少比一直用list[m][n][o]去抓资料容易懂其他你写的东西我有稍微修改,不过整体没有动到.等你确定做出要的功能后,再自己把code整理一下吧重贴
http://codepad.org/rTnBeOrz (上面的没存成功)了解. 那剩下的你再试试看囉记得你的那个叫做list的method最好改一下名称.我的46行写错,左值应该要改成category[i]等等...我搞错了. 那行不用改G_G因为那边本来就是要把category[i][j]这个word换成MyData. 晕了我...别想的太复杂.1. __init__()就是物件的建构式,我在里面加上word这个字段,方便之后底下的__repr__去处理你要的功能.2. __repr__()是回传物件的表示,像是print(object)时,就会去呼叫物件的__repr__()__init__()里面,第一行是取出kwargs中为word的值kwargs是一个dict,所以如果kwargs里没有key为word的值的话,就会回传None.第二行super(...).__init__(...)则是呼叫父类别(list)的建构式__init__().self[:] ← 因为MyData是list,所以self[:]就是取出list内的所有元素.后面的if else就相当于C的三元运算子再稍微修改后的结果:
http://codepad.org/QcD1aN0Z关于*args和**kwargs,看一下这个连结的说明
https://stackoverflow.com/questions/3394835args和kwargs只是变量名称,不一定非要用这几个字然后在class里面self这个关键字是指`物件自己`不过正确说,`self`是大家常用的词,不算是keywordok的! 有问题就再更新内容吧那算是coding style (详见PEP8),就跟class method的第一个参数常用cls或clz一样ok 加油囉y突然想到,44行 mydata = getData(link, mydata.word)要改成1. mydata.append(getData(link, mydata.word))写错,1. mydata.extend(getData(link, mydata.word))或2. mydata[:] = getData(link, mydata.word)