网页资讯视频图片知道文库贴吧地图采购
进入贴吧全吧搜索

 
 
 
日一二三四五六
       
       
       
       
       
       

签到排名:今日本吧第个签到,

本吧因你更精彩,明天继续来努力!

本吧签到人数:0

一键签到
成为超级会员,使用一键签到
一键签到
本月漏签0次!
0
成为超级会员,赠送8张补签卡
如何使用?
点击日历上漏签日期,即可进行补签。
连续签到:天  累计签到:天
0
超级会员单次开通12个月以上,赠送连续签到卡3张
使用连续签到卡
07月02日漏签0天
lua吧 关注:11,613贴子:21,971
  • 看贴

  • 图片

  • 吧主推荐

  • 游戏

  • 3回复贴,共1页
<<返回lua吧
>0< 加载中...

有两个table,如何计算两个table里面的值,然后合并两个表,如图

  • 只看楼主
  • 收藏

  • 回复
  • cenzuoming168
  • 小有美名
    5
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼


  • boboscr
  • 默默无闻
    1
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
table1 = {{"小鱼",1},{"熊猫",2},{"大象",1},{"老虎",1}}
table2 = {{"小鱼",2},{"老虎",5}}
for _,a in pairs(table1) do
for _,b in pairs(table2) do
if a[1] == b[1] then
a[2] = a[2] + b[2]
end
end
end
for _,v in pairs(table1) do
for _,j in pairs(v) do
print(j)
end
end
运行结果:
小鱼
3
熊猫
2
大象
1
老虎
6
==这样写不是很严谨,因为如果表2出现表1没有的动物,就不会加进去
修改后的写法
table1 = {{"小鱼",1},{"熊猫",2},{"大象",1},{"老虎",1}}
table2 = {{"小鱼",2},{"老虎",5},{"老蛇",3},{"老猪",4}}
for _,a in pairs(table1) do
for i,b in pairs(table2) do
if a[1] == b[1] then
a[2] = a[2] + b[2]
table2[i] = nil
end
end
end
if table2 ~= nil then
for i = 1,#table2 do
table1[#table1+i] = table2[i]
end
end
for _,v in pairs(table1) do
for _,j in pairs(v) do
print(j)
end
end
运行结果
小鱼
3
熊猫
2
大象
1
老虎
6
老蛇
3
老猪
4
这么写也不算严谨,因为如果表一或表二有重复的动物就会有错误,再换一种思路,就是先把两张表合并,再处理重复数据


2025-07-02 09:55:24
广告
  • boboscr
  • 默默无闻
    1
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
table1 = {{"小鱼",1},{"熊猫",2},{"大象",1},{"老虎",1},{"小鱼",5}}
table2 = {{"小鱼",2},{"老虎",5},{"老蛇",3},{"老猪",4},{"老虎",2}}
table3 = {}
table4 = {}
--将表一二合并到表一
for i=1,#table2 do
table1[#table1+i] = table2[i]
end
--处理重复名字
for _,a in pairs(table1) do
local str = a[1]
table3[str] = 0
end
--将数据以映射的方式写到表三
for _,a in pairs(table1) do
local str = a[1]
for b,_ in pairs (table3) do
if str == b then
table3[b] = table3[b] + a[2]
end
end
end
--按一二的格式刷到表四
for i,v in pairs (table3) do
table4[#table4+1] = {i,v}
end
for _,v in pairs(table4) do
for _,j in pairs(v) do
print(j)
end
end
输出结果:
熊猫
2
老猪
4
小鱼
8
老蛇
3
老虎
8
大象
1


  • cenzuoming168
  • 小有美名
    5
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼


登录百度账号

扫二维码下载贴吧客户端

下载贴吧APP
看高清直播、视频!
  • 贴吧页面意见反馈
  • 违规贴吧举报反馈通道
  • 贴吧违规信息处理公示
  • 3回复贴,共1页
<<返回lua吧
分享到:
©2025 Baidu贴吧协议|隐私政策|吧主制度|意见反馈|网络谣言警示