python中算法是什么意思_在python中是什么

本文讲述了如何修复使用pysvn从Subversion日志中提取信息时遇到的TypeError,并优化了代码,以正确处理Revision对象和CSV写入。作者分享了将Revision对象转换为可迭代格式及调整输出结构的方法。
摘要由CSDN通过智能技术生成

我正在使用pysvn从subversion日志历史记录(作者,日期,时间,修订版)中提取svn日志信息.我在下面使用的代码:

client = pysvn.Client()

client.callback_get_login

commit_messages = client.log("url")

log_list = []

for i, commit in enumerate(commit_messages):

rev = commit.revision

auth = commit.author

t = time.ctime(commit.date)

mess = commit.message

log_list.append(rev)

log_list.append(auth)

log_list.append(t)

log_list.append(mess)

log_file = open("extracted_log_history",'wb')

wr = csv.writer(log_file, dialect = 'excel')

for item in log_list:

wr.writerows(item)

我发现这可能无法返回以下TypeError:writerows()参数必须是可迭代的.我相信它不可迭代,因为rev = commit.revision返回一个< type’revision’>其他变量(auth,t,mess)都是< type’str’>.关于如何让修订版号“可迭代”的任何想法?

最佳答案 < type’revision’>意味着您有一个

pysvn.Revision instance.如果您想要编写修订号,请使用它的revision.number属性.

但是,您的代码还有其他问题.您将所有列添加到log_list作为单独的行,而不是作为一列,并且您尝试将每行作为一系列行写入CSV.不要使用csv.writerows(),并在处理修订时编写行:

client = pysvn.Client()

client.callback_get_login

with open("extracted_log_history",'wb') as log_file:

wr = csv.writer(log_file)

for commit in client.log("url"):

rev = commit.revision.number

auth = commit.author

t = time.ctime(commit.date)

mess = commit.message

row = [rev, auth, t, mess]

wr.writerow(row)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值