删除字符串中的最后一个字符(Python)

Phi*_*tty 0 python string loops ends-with

我有一个填充字符串对象的列表.如果字符串对象以a结尾W,我想删除/删除W字符串.此外,在唯一的情况下,字符串等于UW我不想删除W.

我试过这个:

masterAbrevs = []

for subject in masterAbrevs:
    if subject.endswith("W"):
        subject =  subject[:-1]
Run Code Online (Sandbox Code Playgroud)

打印后masterAbrevs,我的代码似乎一无所获.善意的帮助.

sga*_*a62 6

问题是你永远不会对列表中的元素进行更改; 您正在对包含从列表返回的元素的变量进行更改.

试试这个:

masterAbrevs = ['ASW', 'AS', 'UW']

for i, e in enumerate(masterAbrevs):
    if (e[-1] == 'W') and (e != 'UW'):
        masterAbrevs[i] = masterAbrevs[i][:-1]

# results in ['AS', 'AS', 'UW']
Run Code Online (Sandbox Code Playgroud)