鱼C论坛

 找回密码
 立即注册
12
返回列表 发新帖
楼主: 2228294101

列表元素取出求助

[复制链接]
发表于 2022-5-17 20:57:11 | 显示全部楼层
2228294101 发表于 2022-5-17 20:52
sn = [['1230','1'],['1230','2'],['1230','3'],['2345','1'],['2345','2'],['2345','3']]
unit = []
u ...


你这代码不对呀,你就举例子 什么样才是你想要的结果吧

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-5-17 21:15:29 | 显示全部楼层
Twilight6 发表于 2022-5-17 20:57
你这代码不对呀,你就举例子 什么样才是你想要的结果吧

输出 = [['1230','1'],['1230','2'],['2345','1'],['2345','2'],['1111','1'],['1111','2'],['2222','1'],['2222','2'],['6547','1'],['6547','2'],['9852','1'],['9852','2']]
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-5-17 21:21:28 | 显示全部楼层
2228294101 发表于 2022-5-17 21:15
输出 = [['1230','1'],['1230','2'],['2345','1'],['2345','2'],['1111','1'],['1111','2'],['2222','1' ...

sn = [['1230','1'],['1230','2'],['1230','3'],['1230','4'],
      ['2345','1'],['2345','2'],['2345','3'],['1111','1'],
      ['1111','2'],['1111','3'],['1111','4'],['1111','5'],
      ['2222','1'],['2222','2'],['2222','3'],['6547','1'],
      ['6547','2'],['6547','3'],['9852','1'],['9852','2']]

tn = []
for x in sn:
    if len(x[0]) == 4 and (x[1] == '1' or x[1] == '2'):
        tn.append(x)
print(tn)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-5-17 21:39:25 | 显示全部楼层

这几个元素不是特定的值,,我只是用来形容一下。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-5-17 21:43:18 | 显示全部楼层
2228294101 发表于 2022-5-17 21:39
这几个元素不是特定的值,,我只是用来形容一下。



只能说你目的和需求描述的太模糊了,没办法

看看有没其他大佬能理解,说实话我到现在都不知道你的需求到底是啥

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-5-17 21:45:49 | 显示全部楼层
sn = [['1230','1'],['1230','2'],['1230','3'],['1230','4'],['2345','1'],['2345','2'],['2345','3'],['1111','1'],['1111','2'],['1111','3'],['1111','4'],['1111','5'],['2222','1'],['2222','2'],['2222','3'],['6547','1'],['6547','2'],['6547','3'],['9852','1'],['9852','2']]

data = {}
for i in sn:
    if i[0] not in data:
        data[i[0]] = [i]
    else:
        data[i[0]].append(i)

for x in data:
    s = ','.join([y[-1] for y in data[x]])
    print(f'{x}相同,提取复制{s}')
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-5-17 22:16:59 | 显示全部楼层
Twilight6 发表于 2022-5-17 21:43
只能说你目的和需求描述的太模糊了,没办法

看看有没其他大佬能理解,说实话我到现在都不知道你的 ...

在这个例子是输出是这样,就是我要输出每个前面元素一样的,['xxxx','n'],前面的xxxx,跟后面的n,都不是特指某一个或者某一串数字,然后我要列表的每个不同的‘xxxx’ 的前两个数组这样能懂吗
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-5-17 22:31:12 | 显示全部楼层

import pandas as pd
sn=[['1230','1'],['1230','2'],['1230','3'],['1230','4'],['2345','1'],['2345','2'],['2345','3'],['1111','1'],['1111','2'],
    ['1111','3'],['1111','4'],['1111','5'],['2222','1'],['2222','2'],['2222','3'],['6547','1'],['6547','2'],['6547','3'],['9852','1'],['9852','2']]
aa=pd.DataFrame(sn)
print (aa[ (aa[1] == '2' ) | (aa[1] == '1' ) ])
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-5-17 23:35:39 | 显示全部楼层
Twilight6 发表于 2022-5-17 21:43
只能说你目的和需求描述的太模糊了,没办法

看看有没其他大佬能理解,说实话我到现在都不知道你的 ...

>>> sn = [['1230','1'],['1230','2'],['1230','3'],['1230','4'],['2345','1'],['2345','2'],['2345','3'],['1111','1'],['1111','2'],['1111','3'],['1111','4'],['1111','5'],['2222','1'],['2222','2'],['2222','3'],['6547','1'],['6547','2'],['6547','3'],['9852','1'],['9852','2']]
>>> unit = []
>>> unit2=[]
>>> s = 0
>>> z = []
>>> for i in sn:
...     n = i[1]
...     unit.append(i[0])
...     while i[0] not in unit:
...         unit.append(i[0])
...         break
...
>>> for x in unit:
...     for y in sn:
...         while s >= 3:
...             if [y[0]] == z:
...                 s = s+1
...             elif [y[0]] != z:
...                 s = 0
...             break
...         while x == y[0] and s < 2:
...             unit2.append(y)
...             z = [y[0]]
...             break
...         s =s+ 1
...
>>> print(unit2)
[['1230', '1'], ['1230', '2'], ['1230', '1'], ['1230', '1'], ['1230', '1'], ['2345', '1'], ['2345', '2'], ['1111', '1'], ['1111', '2'], ['2222', '1'], ['2222', '2'], ['6547', '1'], ['6547', '2'], ['9852', '1'], ['9852', '2']]


我解决了哥!!!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-5-17 23:36:50 | 显示全部楼层
>>> sn = [['1230','1'],['1230','2'],['1230','3'],['1230','4'],['2345','1'],['2345','2'],['2345','3'],['1111','1'],['1111','2'],['1111','3'],['1111','4'],['1111','5'],['2222','1'],['2222','2'],['2222','3'],['6547','1'],['6547','2'],['6547','3'],['9852','1'],['9852','2']]
>>> unit = []
>>> unit2=[]
>>> s = 0
>>> z = []
>>> for i in sn:
...     n = i[1]
...     unit.append(i[0])
...     while i[0] not in unit:
...         unit.append(i[0])
...         break
...
>>> for x in unit:
...     for y in sn:
...         while s >= 3:
...             if [y[0]] == z:
...                 s = s+1
...             elif [y[0]] != z:
...                 s = 0
...             break
...         while x == y[0] and s < 2:
...             unit2.append(y)
...             z = [y[0]]
...             break
...         s =s+ 1
...
>>> print(unit2)
[['1230', '1'], ['1230', '2'], ['1230', '1'], ['1230', '1'], ['1230', '1'], ['2345', '1'], ['2345', '2'], ['1111', '1'], ['1111', '2'], ['2222', '1'], ['2222', '2'], ['6547', '1'], ['6547', '2'], ['9852', '1'], ['9852', '2']]

问题已解决 ,麻烦各位了!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-5-18 11:13:18 | 显示全部楼层
5行代码就可以了,不用来回循环。。。。
import pandas as pd
import numpy as np
sn=[['1230','1'],['1230','2'],['1230','3'],['1230','4'],['2345','1'],['2345','2'],['2345','3'],['1111','1'],['1111','2'],['1111','3'],['1111','4'],['1111','5'],['2222','1'],['2222','2'],['2222','3'],['6547','1'],['6547','2'],['6547','3'],['9852','1'],['9852','2']]
aa=pd.DataFrame(sn)
print (np.array(aa[ (aa[1] == '2' ) | (aa[1] == '1' ) ]).tolist())
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-18 05:30

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表