[英]Python: Finding a (string) key in a dictionary that contains a substring
[英]Is there a Python function for repeating a string if the string contains a key substring?
假设我有一个简单的列表,例如“apples、bananasx2、orangesx3、pears”。
是否有 function 可以将其转换为“苹果、香蕉、香蕉、橙子、橙子、橙子、梨”?
我试图编写一个 if 循环,但我不知道如何识别数字并按该数字重复字符串。 此信息当前位于 dataframe 列中,但并非必须如此。
不确定这是否是最快的,但您可以使用:
import re
l = []
for elem in ["apples", "bananasx2", "orangesx3", "pears"]:
if re.search(".*x\d", elem):
word, occurrence = elem.rsplit("x", 1)
l += [word] * int(occurrence)
else:
l.append(elem)
我更喜欢更优雅的代码。 但它有效。
lis = ["apples", "bananasx2", "orangesx3", "pears"]
for index, i in enumerate(lis) :
if i[-2:-1] == "x" and i[-1].isnumeric:
lis[index] = i[:-2]
for num in range(int(i[-1])-1):
lis.append(i[:-2])
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.