Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/332.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 根据字符串在列表中的位置,将不同的字符串附加到字符串列表中_Python_String_List_Loops_Append - Fatal编程技术网

Python 根据字符串在列表中的位置,将不同的字符串附加到字符串列表中

Python 根据字符串在列表中的位置,将不同的字符串附加到字符串列表中,python,string,list,loops,append,Python,String,List,Loops,Append,给定以下配置列表 ['configuration1A', 'configuration1B', 'configuration1C', 'configuration2A', 'configuration2B', 'configuration2C', 'configuration3A', 'configuration3B', 'configuration3C', 'configuration4A', 'configuration4B', 'configuration4C', 'configurati

给定以下配置列表

['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']
如何在具有特定约束的每个元素(字符串)末尾追加字符串:

•在前75个元素中添加string=“1”(
configuration1A1
,依此类推)

•在接下来的75个元素中添加string=“2”(
configuration1A2
,依此类推)

•在最后75个元素中添加string=“3”(
configuration1A3
,依此类推)

要在字符串末尾添加字符串,可以执行以下操作

config_numb="1"
configurations_new = [x + config_numb for i in configurations_v1]
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
到目前为止,我有以下几点

config_numb="1"
configurations_new = [x + config_numb for i in configurations_v1]
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

我知道,但是我们只考虑附加相同的字符串,这不是这里的问题。

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

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\u new=configurations\u v1.copy()
对于索引,枚举中的值(配置_v1):
如果指数<75:
配置\u新建[索引]=配置\u新建[索引]+“1”
elif指数<150:
配置\u新建[索引]=配置\u新建[索引]+“2”
其他:
配置\u新建[索引]=配置\u新建[索引]+“3”
当使用列表理解编写时:

configurations_new = [i + '1' if index < 75 else i + '2' if index < 150 else i + '3' for index, i in enumerate(configurations_v1)]
configurations_new=[i+'1'如果索引<75,则i+'2'如果索引<150,则i+'3'对于索引,i在枚举中(配置_v1)]