Python重命名文件从csv文件读取名称

2023-11-22

你好,我一直在努力适应this满足我的需要,但我只是 python 的新手,我有一个包含多个列和行的 csv 文件,重要的列是 1 = 文件的旧名称,2 = 文件的新名称,所以我需要转到其中的目录csv 文件中列出的文件并将它们重命名为第 2 列的新名称,正如我所说,我已经尝试了很多方法但没有成功,我粘贴了我所做的最后一个代码,以便您有一个想法:

import os, unicodecsv as csv, sys

IDs = {}

#open and store the csv file
with open('documentos_corpus_ladino.csv','rb') as csvfile:
        timeReader = csv.reader(csvfile, delimiter = ',')

        # build a dictionary with the associated IDs
        for row in timeReader:
              IDs[ row[0] ] = row[1]

# #get the list of files
path = 'txt_orig/'
tmpPath = 'txt_tmp/'
for filename in os.listdir('txt_orig/'):
    oldname = filename
    newname = filename.replace(oldname, csvfile.next().rstrip().split(",")[1])
    os.rename(path + filename, tmpPath + newname)

多谢。


这将重命名每个匹配的文件,并报告尝试重命名的任何错误。它不会尝试移动不存在的文件。

import os, unicodecsv as csv
# open and store the csv file
IDs = {}
with open('documentos_corpus_ladino.csv','rb') as csvfile:
    timeReader = csv.reader(csvfile, delimiter = ',')
    # build dictionary with associated IDs
    for row in timeReader:
        IDs[row[0]] = row[1]
# move files
path = 'txt_orig/'
tmpPath = 'txt_tmp/'
for oldname in os.listdir(path):
    # ignore files in path which aren't in the csv file
    if oldname in IDs:
        try:
            os.rename(os.path.join(path, oldname), os.path.join(tmpPath, IDs[oldname]))
        except:
            print 'File ' + oldname + ' could not be renamed to ' + IDs[oldname] + '!'
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Python重命名文件从csv文件读取名称 的相关文章

  • 如何计算 pandas datetime 对象的均值和方差?

    如何计算 YYYY MM DD 形式的 python 日期时间对象的汇总统计数据 均值和标准差 我想对具有不同 ID 的不同日期时间对象组执行此操作 数据如下 import datetime as dt df pd DataFrame Da
  • 如何传递架构以从现有数据帧创建新数据帧?

    要将 schema 传递到 json 文件 我们这样做 from pyspark sql types import StructField StringType StructType IntegerType data schema Stru
  • 类的 IPython 表示

    我正在使用我创建的模块尝试 IPython 但它没有显示类对象的实际表示 相反 它显示类似的内容 TheClass module TheClass name I heavily在这个模块中使用元类 我有真正有意义的类表示 应该向用户显示 是
  • Python - 比较同一字典中的值

    我有一本字典 d Trump MAGA FollowTheMoney Clinton dems Clinton Stein FollowTheMoney Atlanta 我想删除字符串列表中的重复字符串 该字符串是键的值 对于这个例子 期望
  • 让 VoiceChannel.members 和 Guild.members 返回完整列表的问题

    每当我尝试使用 VoiceChannel members 或 Guild members 时 它都不会提供适用成员的完整列表 我从文本命令的上下文中获取 VoiceChannel 和 Guild 如下所示 bot command name
  • 计算另一个字符串中多个字符串的出现次数

    在 Python 2 7 中 给定以下字符串 Spot是一只棕色的狗 斑点有棕色的头发 斑点的头发是棕色的 查找字符串中 Spot brown 和 hair 总数的最佳方法是什么 在示例中 它将返回 8 我正在寻找类似的东西string c
  • 在 Celery 任务中调用 Google Cloud API 永远不会返回

    我正在尝试拨打外部电话Google Cloud Natural Language API从一个内Celery任务 使用google cloud python包裹 问题是对 API 的调用永远不会返回 挂起 celery task def g
  • NLTK 2.0分类器批量分类器方法

    当我运行此代码时 它会抛出一个错误 我认为这是由于 NLTK 3 0 中不存在batch classify 方法 我很好奇如何解决旧版本中的某些内容在新版本中消失的此类问题 def accuracy classifier gold resu
  • VSCode Settings.json 丢失

    我正在遵循教程 并尝试将 vscode 指向我为 Scrapy 设置的虚拟工作区 但是当我在 VSCode 中打开设置时 工作区设置 选项卡不在 用户设置 选项卡旁边 我还尝试通过以下方式手动转到文件 APPDATA Code User s
  • 在 Django Admin 中调整字段大小

    在管理上添加或编辑条目时 Django 倾向于填充水平空间 但在某些情况下 当编辑 8 个字符宽的日期字段或 6 或 8 个字符的 CharField 时 这确实是一种空间浪费 字符宽 然后编辑框最多可容纳 15 或 20 个字符 我如何告
  • PyQt 使用 ctrl+Enter 触发按钮

    我正在尝试在我的应用程序中触发 确定 按钮 我当前尝试的代码是这样的 self okPushButton setShortcut ctrl Enter 然而 它不起作用 这是有道理的 我尝试查找一些按键序列here http ftp ics
  • Pycharm 在 os.path 连接上出现“未解析的引用”

    将pycharm升级到2018 1 并将python升级到3 6 5后 pycharm报告 未解析的引用 join 最新版本的 pycharm 不会显示以下行的任何警告 from os path import join expanduser
  • 使用 python/numpy 重塑数组

    我想重塑以下数组 gt gt gt test array 11 12 13 14 21 22 23 24 31 32 33 34 41 42 43 44 为了得到 gt gt gt test2 array 11 12 21 22 13 14
  • 嵌套作用域和 Lambda

    def funct x 4 action lambda n x n return action x funct print x 2 prints 16 我不太明白为什么2会自动分配给n n是返回的匿名函数的参数funct 完全等价的定义fu
  • Django 视图中的“请求”是什么

    在 Django 第一个应用程序的 Django 教程中 我们有 from django http import HttpResponse def index request return HttpResponse Hello world
  • 尽管我已在 python ctypes 中设置了信号处理程序,但并未调用它

    我尝试过使用 sigaction 和 ctypes 设置信号处理程序 我知道它可以与python中的信号模块一起使用 但我想尝试学习 当我向该进程发送 SIGTERM 时 但它没有调用我设置的处理程序 只打印 终止 为什么它不调用处理程序
  • 如何使用 Python 3 检查目录是否包含文件

    我到处寻找这个答案但找不到 我正在尝试编写一个脚本来搜索特定的子文件夹 然后检查它是否包含任何文件 如果包含 则写出该文件夹的路径 我已经弄清楚了子文件夹搜索部分 但检查文件却难倒了我 我发现了有关如何检查文件夹是否为空的多个建议 并且我尝
  • 如何将 Django 中的权限添加到模型并使用 shell 进行测试

    我在模型中添加了 Meta 类并同步了数据库 然后在 shell 中创建了一个对象 它返回 false 所以我真的无法理解错误在哪里或者缺少什么是否在其他文件中可能存在某种配置 class Employer User Employer in
  • pytest找不到模块[重复]

    这个问题在这里已经有答案了 我正在关注pytest 良好实践 https docs pytest org en latest explanation goodpractices html test discovery或者至少我认为我是 但是
  • JSON:TypeError:Decimal('34.3')不是JSON可序列化的[重复]

    这个问题在这里已经有答案了 我正在运行一个 SQL 查询 它返回一个小数列表 当我尝试将其转换为 JSON 时 出现类型错误 查询 res db execute SELECT CAST SUM r SalesVolume 1000 0 AS

随机推荐

  • 如何在 Sequelize 中记录带有有界参数的查询?

    我正在使用sequelize 版本5 3 5 连接到postgresql数据库并配置了日志记录以使用console log 但是每当出现带有有限参数的查询时 我无法看到正在绑定哪些参数 配置非常标准 import Sequelize fro
  • 如何在构造函数中初始化 char 数组?

    我在声明和初始化 char 数组时遇到问题 它始终显示随机字符 我创建了一小段代码来展示我在较大的程序中尝试的内容 class test private char name 40 int x public test void display
  • Hibernate 与引用列的一对一映射(XML 映射)

    我有一个用户表和一个user detail具有一对一映射的表user detail表有一个字段user id用于存储相应用户的 id 字段值的关系 如何编写休眠hbm为这种关系归档 UPDATE 我的问题是用户的主键是id user det
  • CSS - 使用 display: inline 属性删除列表菜单中的水平空间

    我是 CSS 新手 并且有一个设定的目标 即在本月底之前用 CSS 学习和发布我的网站 我的问题 我正在尝试构建一个带有悬停下拉菜单的 CSS 水平菜单 但是 当我使用display inline财产与li 列表 项目 我得到了之间的水平空
  • 即使正确设置了 tabindex,提交按钮也没有聚焦

    我已经为表单中的输入字段定义了选项卡索引 当通过输入字段进行 Tab 键切换时 提交按钮永远不会获得焦点 页面上不同形式的其他一些输入字段会获得焦点 这些选项卡索引都高于 3 为什么呢
  • 用 jQuery 覆盖 a:hover?

    我定义了一个 a 带有 css 的标签 我正在尝试停止默认样式表 hover的变化a标签 如何禁用 Jquery 中 a 标签上的悬停更改 以下解决方案的现场演示 http jsbin com umiru 我能想到的最简单的方法是改变 a
  • 从 String[] 到 F# List 的高效转换

    我是从 C 背景转向 F 的 在不同的列表和集合方面有点落后 我最近遇到一个情况 我需要从 string 到 T 列表 我最终使用列表理解来进行转换 let lines File ReadAllLines C LinesOText txt
  • C++ 意外整数提升

    我最近正在编写一些实际上应该测试其他代码的代码 我偶然发现了一个令人惊讶的整数提升案例 这是最小的测试用例 include
  • 如何让机器人提及频道?

    我正在发表欢迎信息 但我似乎无法说出规则频道 我希望机器人说出 rules 并执行它 以便您可以单击它进入规则频道 我知道您可以对普通用户执行此操作 但我想用我的机器人执行此操作 每次尝试都无法像普通播放器一样点击 我尝试过 rules 和
  • UITableView 多选

    如何将 UITableView 添加到基于视图的应用程序中 用户将点击多个单元格 它将被选中 就像时钟应用程序的名为 重复 的 新闹钟 设置 时钟 gt 闹钟 gt gt 重复 如何获取数组中所有选定的单元格 对于多项选择 请添加以下行vi
  • git:// 协议被公司阻止,我该如何解决这个问题?

    尝试类似的事情git clone git github com ry node git不会起作用 它会导致 Initialized empty Git repository in home robert node git github co
  • python 执行器从完成回调中生成任务(递归提交任务)

    我正在尝试根据已完成的任务结果提交进一步的任务 with concurrent futures ThreadPoolExecutor as executor future executor submit my task def callba
  • 将字符串转换为 JSONArray(不是 gson 中的 JsonArray)[重复]

    这个问题在这里已经有答案了 如何正确地将这个字符串转换为 jsonArray myArray id 1 att1 14 2 att2 false id 2 att1 13 2 att2 false id 3 att1 13 att2 fal
  • 有没有办法根据字符串相似性过滤 django 查询集(la python difflib)?

    我需要将冷线索与我们客户的数据库进行匹配 潜在客户大量来自第三方提供商 数千条记录 销售人员要求我们 用他们的话说 过滤掉我们的客户 这样他们就不会试图向既定客户出售我们的服务 显然 线索中存在拼写错误 查尔斯变成了查理 约瑟夫变成了乔 等
  • 注销和登录后任务计划程序无法显示应用程序的 GUI(无论用户是否登录都运行)

    我有一个 GUI 应用程序 我希望它在重新启动 注销 Windows 计算机后自动运行 以下是我使用 Windows 任务计划程序的方法 首先运行命令创建任务 c Windows System32 schtasks exe Create T
  • 在 anaconda 环境中使用 pyinstaller

    我有一个非常简单的应用程序python v 3 6 我想使用 pyinstaller 冻结它 我使用 anaconda 创建的环境制作了该应用程序 并在那里安装了我需要的软件包 youtube dl 我需要有关如何使用我创建的环境 其中包含
  • 这是在ansible中更改conf文件配置的最佳方法

    最初我使用了一个makefile将我的应用程序部署在linux 我有各种sed用于替换 PHP 上传文件大小 帖子大小 日志文件位置等变量的命令 现在我正在转向ansible 我知道我可以复制这些文件 但是如何更改conf文件 就像我只是想
  • React JS/Typescript 中的空合并运算符[重复]

    这个问题在这里已经有答案了 我们有 Null 合并运算符 NET我们可以使用如下 string postal code address postal code 我们可以在 React JS 中做同样的事情吗 我发现我们可以用 运算符来做 i
  • 具有更多模板参数的部分专业化

    部分特化是否允许拥有比主模板更多的模板参数 我的理解是 部分特化必须具有与主模板更少或相同数量的模板参数 我正在阅读 C 模板 第 2 版 其中第 5 4 节 第 72 页 提到 template
  • Python重命名文件从csv文件读取名称

    你好 我一直在努力适应this满足我的需要 但我只是 python 的新手 我有一个包含多个列和行的 csv 文件 重要的列是 1 文件的旧名称 2 文件的新名称 所以我需要转到其中的目录csv 文件中列出的文件并将它们重命名为第 2 列的