![](/img/trans.png)
[英]How to print each element of a list of lists of variable length as a column in python?
[英]Create a function in Python that generates a 2-column array counting the substring occurence in each element of a list and the length of each element?
有两个列表,string 和 query,都包含字符串。 我想创建一个 function 返回一个二维数组显示:
例如,如果我们有
作为:
所以 function 应该返回数组 [[3, 2], [1, 3], [1, 2]]
我尝试了以下方法:
def countstuff(string, query)
result = []
for i in query:
array = [[sum(i in j for j in string], len(i)]]
result.append(array)
return result
但在我开始尝试 function 之前,它返回 SyntaxError: invalid syntax。
脑子不好使,求大神指点,谢谢。
def countstuff(string, query):
result = []
for i in query:
ocr=0
for j in string:
ocr+=j.count(i)
lst=[ocr,len(i)]
result.append(lst)
return result
string = ['om', 'om', 'omg']
query = ['om', 'omg', 'mg']
print(countstuff(string,query))
玩得开心:)
简单的方法来做到这一点:
string = ['om', 'om', 'omg']
query = ['om', 'omg', 'mg']
def countstuff(strings, queries):
result=[]
string = " ".join(strings)
for query in queries:
count= string.count(query)
length = len(query)
result.append([count,length])
return result
print(countstuff(string,query))
Output:
[[3, 2], [1, 3], [1, 2]]
嗨,经过更多的摆弄,我找到了另一个解决方案,谢谢大家。
def countstuff(string, query):
result = []
for i in query:
array = [sum(i in j for j in string)]
array.append(len(i))
result.append(array)
return result
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.