python - 切片列表中的所有字符串?

标签 python string list slice

是否有一种 Pythonic 的方式来对列表中的所有字符串进行切片?

假设我有一个字符串列表:

list = ['foo', 'bar', 'baz']

我只需要每个字符串的最后 2 个字符:

list2 = ['oo', 'ar', 'az']

我怎样才能得到它?

我知道我可以遍历列表并从每个列表中获取 list[i][-2:],但这似乎不是很 Pythonic。

一般情况下,我的代码是:

def parseIt(filename):
    with open(filename) as f:
        lines = f.readlines()

   result = [i.split(',') for i in lines[]]

...除非我只想从每一行(而不是整行)中拆分 lines[i][20:]

最佳答案

您提到您可以执行 list[i][-2:] 以根据您的规范转换列表,但您实际要寻找的是:

[word[1:] for word in lst]

此外,对于您提供的代码示例,您希望从头开始分割 20 个字符,解决方案是相同的:

result = [i[20:].split(',') for i in lines]

关于python - 切片列表中的所有字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39908314/

相关文章:

python - pandas (sub)Dataframe 中的最大值和最小值

c - 为什么 fscanf() 不将此字符串存储在此指针中?

java - 我的计算器程序无法运行。字符串变量的问题

c - 来自另一个函数的动态格式化字符串

Python - For 循环在单独的行上打印每个数字及其平方

python - 在本地主机上使用结构

python - 如何找到参数和函数的所有可能组合

python - 如何在 findall() 函数返回的列表上运行 sub() 函数?

java - 如何创建对象列表的摘要?

python - 将 Pandas 的列表列拆分为多列