根据字符串在列表中的位置将不同的字符串追加到字符串列表中 [英] Append different strings to a list of strings depending on its position in the list

查看:66
本文介绍了根据字符串在列表中的位置将不同的字符串追加到字符串列表中的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

给出以下配置列表

['configuration1A', 'configuration1B', 'configuration1C', 'configuration2A', 'configuration2B', 'configuration2C', 'configuration3A', 'configuration3B', 'configuration3C', 'configuration4A', 'configuration4B', 'configuration4C', 'configuration5A', 'configuration5B', 'configuration5C', 'configuration6A', 'configuration6B', 'configuration6C', 'configuration7A', 'configuration7B', 'configuration7C', 'configuration8A', 'configuration8B', 'configuration8C', 'configuration9A', 'configuration9B', 'configuration9C', 'configuration10A', 'configuration10B', 'configuration10C', 'configuration11A', 'configuration11B', 'configuration11C', 'configuration12A', 'configuration12B', 'configuration12C', 'configuration13A', 'configuration13B', 'configuration13C', 'configuration14A', 'configuration14B', 'configuration14C', 'configuration15A', 'configuration15B', 'configuration15C', 'configuration16A', 'configuration16B', 'configuration16C', 'configuration17A', 'configuration17B', 'configuration17C', 'configuration18A', 'configuration18B', 'configuration18C', 'configuration19A', 'configuration19B', 'configuration19C', 'configuration20A', 'configuration20B', 'configuration20C', 'configuration21A', 'configuration21B', 'configuration21C', 'configuration22A', 'configuration22B', 'configuration22C', 'configuration23A', 'configuration23B', 'configuration23C', 'configuration24A', 'configuration24B', 'configuration24C', 'configuration25A', 'configuration25B', 'configuration25C', 'configuration1A', 'configuration1B', 'configuration1C', 'configuration2A', 'configuration2B', 'configuration2C', 'configuration3A', 'configuration3B', 'configuration3C', 'configuration4A', 'configuration4B', 'configuration4C', 'configuration5A', 'configuration5B', 'configuration5C', 'configuration6A', 'configuration6B', 'configuration6C', 'configuration7A', 'configuration7B', 'configuration7C', 'configuration8A', 'configuration8B', 'configuration8C', 'configuration9A', 'configuration9B', 'configuration9C', 'configuration10A', 'configuration10B', 'configuration10C', 'configuration11A', 'configuration11B', 'configuration11C', 'configuration12A', 'configuration12B', 'configuration12C', 'configuration13A', 'configuration13B', 'configuration13C', 'configuration14A', 'configuration14B', 'configuration14C', 'configuration15A', 'configuration15B', 'configuration15C', 'configuration16A', 'configuration16B', 'configuration16C', 'configuration17A', 'configuration17B', 'configuration17C', 'configuration18A', 'configuration18B', 'configuration18C', 'configuration19A', 'configuration19B', 'configuration19C', 'configuration20A', 'configuration20B', 'configuration20C', 'configuration21A', 'configuration21B', 'configuration21C', 'configuration22A', 'configuration22B', 'configuration22C', 'configuration23A', 'configuration23B', 'configuration23C', 'configuration24A', 'configuration24B', 'configuration24C', 'configuration25A', 'configuration25B', 'configuration25C', 'configuration1A', 'configuration1B', 'configuration1C', 'configuration2A', 'configuration2B', 'configuration2C', 'configuration3A', 'configuration3B', 'configuration3C', 'configuration4A', 'configuration4B', 'configuration4C', 'configuration5A', 'configuration5B', 'configuration5C', 'configuration6A', 'configuration6B', 'configuration6C', 'configuration7A', 'configuration7B', 'configuration7C', 'configuration8A', 'configuration8B', 'configuration8C', 'configuration9A', 'configuration9B', 'configuration9C', 'configuration10A', 'configuration10B', 'configuration10C', 'configuration11A', 'configuration11B', 'configuration11C', 'configuration12A', 'configuration12B', 'configuration12C', 'configuration13A', 'configuration13B', 'configuration13C', 'configuration14A', 'configuration14B', 'configuration14C', 'configuration15A', 'configuration15B', 'configuration15C', 'configuration16A', 'configuration16B', 'configuration16C', 'configuration17A', 'configuration17B', 'configuration17C', 'configuration18A', 'configuration18B', 'configuration18C', 'configuration19A', 'configuration19B', 'configuration19C', 'configuration20A', 'configuration20B', 'configuration20C', 'configuration21A', 'configuration21B', 'configuration21C', 'configuration22A', 'configuration22B', 'configuration22C', 'configuration23A', 'configuration23B', 'configuration23C', 'configuration24A', 'configuration24B', 'configuration24C', 'configuration25A', 'configuration25B', 'configuration25C']

如何在具有特定约束的每个元素(字符串)的末尾附加一个字符串:

How does one append a string at the end of each element (string) with specific constraints:

•添加字符串="1";到前75个元素( configuration1A1 ,依此类推)

• Add string="1" to the first 75 elements (configuration1A1, and so on)

•添加字符串="2"到下一个75个元素( configuration1A2 ,依此类推)

• Add string="2" to the next 75 elements (configuration1A2, and so on)

•添加字符串="3"到最后75个元素( configuration1A3 等)

• Add string="3" to the last 75 elements (configuration1A3, and so on)

为了将字符串添加到字符串的末尾,可以执行以下操作

In order to add the string at the end of a string, one can do the following

config_numb="1"
configurations_new = [x + config_numb for i in configurations_v1]

到目前为止,我有以下内容

So far, I have the following

count = 0

for x in configurations_v1:
    
    if count < 75:
        #print(x)
        config_numb="1"
        configurations_new = [x + config_numb for i in configurations_v1]
        
        pass
    elif count >= 75 and count < 150:
        #print(x)
        config_numb="2"
        configurations_new = [x + config_numb for i in configurations_v1]
        pass
    
    elif count >= 150:
        #print(x)
        config_numb="3"
        configurations_new = [x + config_numb for i in configurations_v1]
        pass
    
    count += 1

但这会创建一个具有所需len()的列表,但是,不是将配置列表中的所有元素都以其各自的 config_numb 结尾,而是将每个元素都配置为 configuration25C3.

But this is creating a list with the len() required, however, instead of having all the elements in the configuration list with their respective config_numb at the end, every element is configuration25C3.

['configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3', 'configuration25C3']

我知道这个问题,但是那只考虑了相同字符串的附加,而不是问题在这里.

I am aware of this question, but that one only considers the appending of the same string, which is not the problem here.

推荐答案

这里的问题是列表理解迭代整个可迭代对象并创建一个新列表,您可以向值添加条件,但实际上迭代可能更容易对人们理解,还有一点要注意的是,字符串是不可变的,即当您说修改时,实际上是在创建新的字符串.试试这个:

The problem here is list comprehension iterates over an entire iterable and creates a new list, you can add conditions to the value but just iterating might in fact be easier to understand for people, also one more thing to note is strings are immutable i.e. when you are saying modify you are in fact creating a new string. Try this:

configurations_new = configurations_v1.copy()
for index, value in enumerate(configurations_v1):
    if index < 75:
        configurations_new[index] = configurations_new[index] + '1'
    elif index < 150:
        configurations_new[index] = configurations_new[index] + '2'
    else:
        configurations_new[index] = configurations_new[index] + '3'

使用列表推导写的是:

configurations_new = [i + '1' if index < 75 else i + '2' if index < 150 else i + '3' for index, i in enumerate(configurations_v1)]

这篇关于根据字符串在列表中的位置将不同的字符串追加到字符串列表中的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆