【发布时间】:2019-03-19 09:38:08
【问题描述】:
我正在尝试执行以下操作:
- 创建一个随机数据数组
- 创建一组预定义代码(AW、SS)
- 减去所有数字以及预定义代码的任何实例。
- 如果在第 3 步之后仍有一个名为“HL”的字符串,则将其删除并取下一个字母对。如果一个名为“HL”的字符串是数组中唯一的字符串,那么就使用它。
我不知道如何完成步骤 3 - 4。
1.
array_data = ['HL22','PG1234-332HL','1334-SF-21HL','HL43--222PG','HL222AW11144RH','HLSSDD','SSDD']
2.
predefined_code = ['AW','SS']
3.
理想情况下,这一步的结果看起来像
result_data = [['HL'],['PG,HL'],['SF','HL'],['HL','PG'],['HL','RH'],
['HL','DD'],['DD']
4。理想情况下,此步骤的结果如下所示:
result_data = [['HL'],['PG'],['SF'],['PG'],['RH'], ['DD'],['DD']
对于第 3 步,我尝试了以下代码
not_in_predefined = [item for item in array_data if item not in predefined_code]
但这不会产生我正在寻找的结果,因为它会根据项目检查项目。不是部分字符串匹配。
【问题讨论】:
-
第 3 步几乎是实际编码开始的地方。到目前为止,您尝试过什么?
-
更新帖子谢谢
-
对不起,和this your question有什么区别?
标签: python arrays regex pandas loops