我有以下列表:
a = [1, 2, ['c', 'd'], 3, 4, ['e', 'f'], 5, 6]
Run Code Online (Sandbox Code Playgroud)
列表列表的数量a可以有所不同,但是没有.每个列表列表中的元素将保持不变.
例如,如下所示:
a = [1, 2, ['c', 'd'], 3, 4, ['e', 'f'], 5, 6, ['g', 'h'], 7, 8]
Run Code Online (Sandbox Code Playgroud)
要么
a = [1, 2, ['c', 'd', 'e'], 3, 4, ['f', 'g', 'h'], 5, 6, ['i', 'j', 'k'], 7, 8]
Run Code Online (Sandbox Code Playgroud)
所以输入:
a = [1, 2, ['c', 'd'], 3, 4, ['e', 'f'], 5, 6]
Run Code Online (Sandbox Code Playgroud)
我期待以下输出:
[[1, 2, 'c', 3, 4, 'e', 5, 6], [1, 2, 'd', …Run Code Online (Sandbox Code Playgroud) 我有一份清单 lst = [1,1,1,2,2,2,2,3,3,3,3,3,4,4,4,4,4,4,4,4,4]
我期待以下输出:
out = [1,"","",2,"","","",3,"","","","",4,"","","","","","","",""]
Run Code Online (Sandbox Code Playgroud)
我想保留第一次出现的项目,并用空字符串替换同一项目的所有其他出现次数.
我尝试了以下方法.
`def splrep(lst):
from collections import Counter
C = Counter(lst)
flst = [ [k,]*v for k,v in C.items()]
nl = []
for i in flst:
nl1 = []
for j,k in enumerate(i):
nl1.append(j)
nl.append(nl1)
ng = list(zip(flst, nl))
for i,j in ng:
j.pop(0)
for i,j in ng:
for k in j:
i[k] = ''
final = [i for [i,j] in ng]
fin = [i for j in final for i in …Run Code Online (Sandbox Code Playgroud) 我试图从列表中提取连续的'NN'元素(包括'NNP')并附加到'NN'之前遇到'IN'或'TO'的新列表.我该怎么做?
我尝试了以下代码.但无法捕获其他类似的实例.
new = ['JJ',
'NN',
'IN',
'NNP',
'NN',
'MD',
'VB',
'VBN',
'IN',
'NN',
'TO',
'VB',
'NN',
'CC',
'NN',
'TO',
'NNP',
'NN',
'NN',
'.']
lst = []
for i,j in enumerate(new):
lst1 = []
if j == 'IN':
for i in new[i+1:]:
if 'NN' in i:
lst1.append(i)
lst.append(lst1)
break
lst = [['NNP'], ['NN']]
Run Code Online (Sandbox Code Playgroud)
但我想改进代码以提供以下输出:
[['NNP', 'NN'], ['NN'], ['NNP', 'NN', 'NN']
Run Code Online (Sandbox Code Playgroud)
每个输出块在它们之前发生'IN'或'TO'.
实际上,上面的列表(新)是此列表的基本词性:
[['Additional',
'condition',
'of',
'DeNOx',
'activation',
'shall',
'be',
'introduced',
'in',
'order',
'to',
'provide',
'flexibility',
'and',
'robustness',
'to',
'NSC',
'regeneration', …Run Code Online (Sandbox Code Playgroud) 我有一个包含 1000 个关键字的列表A1:A1000。我想在每个关键字的相应单元格中获取第一页的 Google 搜索结果片段。例如:A1单元格的搜索结果片段应该在B1......*1等等。任何帮助深表感谢。