Module:Sandbox/InvalidData/AichanRepeat:修订间差异
InvalidData(讨论 | 贡献) 小 (python导致的) |
InvalidData(讨论 | 贡献) 小 (修复读取错误) |
||
第2行: | 第2行: | ||
local p = {} | local p = {} | ||
function p.getList() | |||
return mw.text.jsonDecode(mw.title.new(srcFileName,'User'):getContent())['aichan'] | return mw.text.jsonDecode(mw.title.new(srcFileName,'User'):getContent())['aichan'] | ||
end | end | ||
function p.main() | function p.main() | ||
local prefList = getList() | local prefList = p.getList() | ||
local allList = {} | local allList = {} | ||
local repList = {} | local repList = {} |
2024年9月22日 (日) 21:51的版本
可在Module:Sandbox/InvalidData/AichanRepeat/doc创建此模块的帮助文档
local srcFileName = 'InvalidData/preferdata.json'
local p = {}
function p.getList()
return mw.text.jsonDecode(mw.title.new(srcFileName,'User'):getContent())['aichan']
end
function p.main()
local prefList = p.getList()
local allList = {}
local repList = {}
local repTimes = 0
local repSongs = 0
local songNumber = 0
for i = 1,#prefList,1 do
local tempPref1 = prefList[i]['prefer']
for j = 1,#tempPref1,1 do
local tempPref2 = tempPref1[j]
for k = 1,#tempPref2,1 do
local curSong = tempPref2[k]
if allList[curSong] then -- when repeat
repTimes = repTimes + 1
if repList[curSong] then -- when not first repeat
repList[curSong] = repList[curSong] + 1
else -- when first repeat
repList[curSong] = 1
repSongs = repSongs + 1
end
else -- when not repeat
songNumber = songNumber + 1
allList[songNumber] = curSong
end
end
end
end
local wikiText = "* 出现了'''" .. repTimes .. "'''次/'''" .. repSongs .. "'''首重复曲目"
return wikiText
end
return p