p4python 运行 描述没有返回列表
p4python run describe is not returning list
p4.connect() # Connect to the Perforce Server
info = p4.run("info") # Run "p4 info" (returns a dict)
changes_results = p4.run('changes','-s','submitted', '//components/rel/...@2017/11/01,@2017/12/31')
changes_lists = []
for change_result in changes_results:
change_list = change_result['change']
changes_lists.append(change_list)
print('Total Change list found ', len(changes_lists))
for idx_main, change_id in enumerate(changes_lists):
print('\n\n\n', change_id, idx_main)
result = p4.run('describe', change_id)
print(result)
depotfiles = result[0]["depotFile"]
filesrevision = result[0]["rev"]
对于某些更改列表,这工作得很好 p4.run 正在返回列表,我能够提取更改列表文件及其修订号。
但有时 p4.run 没有返回正确的列表而是返回字符串,我无法提取更改列表文件及其修订号并给出以下错误
depotfiles = 结果[0]["depotFile"]
类型错误:字符串索引必须是整数
P4 或我的代码有问题吗?
获取更改列表(或其他任何地方)中的文件列表的最直接方法是 p4 files
命令。
即替换:
result = p4.run('describe', change_id)
print(result)
depotfiles = result[0]["depotFile"]
filesrevision = result[0]["rev"]
与:
for result in p4.run('files', '@='+change_id):
print(result)
depotfiles = result["depotFile"]
filesrevision = result["rev"]
p4.connect() # Connect to the Perforce Server
info = p4.run("info") # Run "p4 info" (returns a dict)
changes_results = p4.run('changes','-s','submitted', '//components/rel/...@2017/11/01,@2017/12/31')
changes_lists = []
for change_result in changes_results:
change_list = change_result['change']
changes_lists.append(change_list)
print('Total Change list found ', len(changes_lists))
for idx_main, change_id in enumerate(changes_lists):
print('\n\n\n', change_id, idx_main)
result = p4.run('describe', change_id)
print(result)
depotfiles = result[0]["depotFile"]
filesrevision = result[0]["rev"]
对于某些更改列表,这工作得很好 p4.run 正在返回列表,我能够提取更改列表文件及其修订号。
但有时 p4.run 没有返回正确的列表而是返回字符串,我无法提取更改列表文件及其修订号并给出以下错误
depotfiles = 结果[0]["depotFile"] 类型错误:字符串索引必须是整数
P4 或我的代码有问题吗?
获取更改列表(或其他任何地方)中的文件列表的最直接方法是 p4 files
命令。
即替换:
result = p4.run('describe', change_id)
print(result)
depotfiles = result[0]["depotFile"]
filesrevision = result[0]["rev"]
与:
for result in p4.run('files', '@='+change_id):
print(result)
depotfiles = result["depotFile"]
filesrevision = result["rev"]