zh648990 发表于 2022-3-28 11:33

Python append()的对象顺序怎么安装添加的顺序排列?

本帖最后由 zh648990 于 2022-3-28 13:18 编辑

def getDataFilePath():    """
    获取数据表文件目录
    :return:
    """
    # 主目录
    path = 'E:/下载/'
    # 本地日期
    localDate = datetime.datetime.now().strftime('%Y-%m-%d')
    # 新建空列表存放文件
    fileList = []
    # 遍历目录
    for root, dirs, files in os.walk(path):
      # 遍历所有文件
      for file in files:
            # 宝贝管理
            if 'export_宝贝管理' in file:
                filePath = path + file
                fileList.append(filePath)
            # 商品库存
            elif '商品库存' in file:
                if localDate in file:
                  # 拼接完整目录
                  filePath = path + file
                  fileList.append(filePath)
            # 销售主题分析
            elif '销售主题分析' in file:
                if localDate in file:
                  # 拼接完整目录
                  filePath = path + file
                  fileList.append(filePath)
    return fileList
结果如下
['E:/下载/export_宝贝管理.xlsx', 'E:/下载/商品库存_2022-03-28_11-00-32.xlsx', 'E:/下载/销售主题分析_按款式_2022-03-28_11-00-58.xlsx']
假如 排名第一的if export_宝贝管理 命名改变成 宝贝管理则结果变成
['E:/下载/商品库存_2022-03-28_11-00-32.xlsx', 'E:/下载/宝贝管理.xlsx', 'E:/下载/销售主题分析_按款式_2022-03-28_11-00-58.xlsx']

怎么让列表里的对象按if添加的顺序排列?

洛枫 发表于 2022-3-28 12:25

zh648990 发表于 2022-3-28 13:00

洛枫 发表于 2022-3-28 12:25
list是有序的,set是乱序的;问题应该在于os.walk(path)是字典排序后的?

不是用if 判断先后顺序了么,这个问题应该怎么解决啊大佬

d8349565 发表于 2022-3-28 13:03

a = ['','','']
b = '111'
c = '222'
d = '333'
a=b
a=c
a=d
a

zh648990 发表于 2022-3-28 13:18

d8349565 发表于 2022-3-28 13:03
a = ['','','']
b = '111'
c = '222'


嗷 恍然大悟 大佬牛掰{:301_993:}

tencentma 发表于 2022-3-28 13:52

zh648990 发表于 2022-3-28 13:18
嗷 恍然大悟 大佬牛掰

他给的这个代码确实清晰易懂

luoyulong 发表于 2022-3-28 14:17

用dict来存储中间变量不是更简单吗
页: [1]
查看完整版本: Python append()的对象顺序怎么安装添加的顺序排列?