开发者社区> 问答> 正文

如何在以python中的特定字符开头的字符串列表中选择特定数量的元素?

我有一个包含以以下日期开头的文件的列表:

["CITY_NAME_20170102", "CITY_NAME_20170103", ...]

现在,我想使用一行代码以这个此长列表中为每个特定城市仅选择特定年份。

首先想到的只是运行一个for循环并编写一个if子句以遍历所有文件名,并仅附加以特定年份和城市开头的文件名。但是,我敢肯定有一种更简单的方法可以做到这一点。

例如,是否有任何功能可以搜索所有元素并为我提供一个从2017年开始的功能?

问题来源: stackoverflow

展开
收起
is大龙 2020-03-20 20:16:58 726 0
1 条回答
写回答
取消 提交回答
  • 要从给定的字符串中提取年份,可以使用负索引。

    例如:

    a="CITY_NAME_20170103"
    a[-8:-4]
    # '2017'
    

    或Pythonic的方式:

    [s for s in list_of_strings if x[-8:-4] == '2017'] #Suggested by @schwobaseggl in the comments
    
    还可以使用`filter`获取2017年的字符串列表
    
    ```python
    list(filter(lambda x: x[-8:-4]=='2017',list_of_strings))
    

    回答来源: stackoverflow

    2020-03-20 20:18:53
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
From Python Scikit-Learn to Sc 立即下载
Data Pre-Processing in Python: 立即下载
双剑合璧-Python和大数据计算平台的结合 立即下载