AttributeError:' list'对象没有属性'替换'

时间:2014-05-07 05:05:35

标签: python

我在下面的代码中遇到了以下错误,是否可以提供有关如何修复它的建议?

import json
gerritinfo=['{"project":"platform/frameworks/opt/telephony","branch":"kitkat","id":"Idcf6faee0f6259704ea07b62ce713ebdd4c5da1b","number":"739919","subject":"Correct order of parameter in iccExchangeApdu()","owner":{"name":"Satish Kumar Singh","email":"c_ssing@qca.qualcomm.com","username":"c_ssing"},"url":"https://review-android.quicinc.com/739919","createdOn":1399412660,"lastUpdated":1399437231,"sortKey":"002cea91000b4a4f","open":true,"status":"NEW","comments":[{"timestamp":1399412661,"reviewer":{"name":"Gator Service Account","email":"gator@localhost","username":"gator"},"message":"Patch Set 1: Looks good to me, but someone else must approve\\n\\nThis patchset has been processed by the Gator."},{"timestamp":1399412704,"reviewer":{"name":"Checkpatch Service Account","email":"checkpatch@localhost","username":"checkpatch"},"message":"Patch Set 1: Looks good to me, but someone else must approve\\n\\nYour change has passed all of the checks enforced by the android patchchecker."},{"timestamp":1399413456,"reviewer":{"name":"Satish Kumar Singh","email":"c_ssing@qca.qualcomm.com","username":"c_ssing"},"message":"Patch Set 1: Developer Build and Test Successful\\n\\n"},{"timestamp":1399415354,"reviewer":{"name":"Gueyoung Lee","email":"gueyoung@qca.qualcomm.com","username":"gueyoung"},"message":"Patch Set 1: Looks good to me, but someone else must approve\\n\\n"},{"timestamp":1399417092,"reviewer":{"name":"Dhananjai Singh","email":"dhananja@qca.qualcomm.com","username":"dhananja"},"message":"Patch Set 1: Looks good to me, but someone else must approve\\n\\n"},{"timestamp":1399417366,"reviewer":{"name":"David Ng","email":"dng@quicinc.com","username":"dng"},"message":"Patch Set 1: Looks good to me, approved\\n\\nI remembered the previous change went in recently.  How come this was not caught in the original testing as this would have failed right away?\\n\\nThanks!\\nDavid"},{"timestamp":1399418880,"reviewer":{"name":"Klocwork Automation User","email":"kwuser@localhost","username":"kwuser"},"message":"Patch Set 1:\\n\\nThis change is being verified in klocwork for the following manifests along with other changes as detailed below:\\n\\n\\n\\n\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\n\\ngit-android.quicinc.com/platform/manifest:kk:default.xml\\n\\n\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\n\\nhttps://commander.qualcomm.com/commander/pages/SimplifiedJobView/LoadComponent_run?jobId\\u003d3217513\\n\\n--------------------------------------------------------------------------------------------------------------------------------------------------------------------------\\n\\n  o https://review-android.quicinc.com/#change,\\n\\n\\n\\nPlease note that verification of all changes in this batch need to be successful before this change can be merged.\\n\\nPLEASE DO NOT UPLOAD A NEW PATCH SET, OR REMOVE APPROVALS UNTIL THE VERIFICATION IS COMPLETE.\\n"},{"timestamp":1399418898,"reviewer":{"name":"Linux Build Service Account","email":"lnxbuild@localhost","username":"lnxbuild"},"message":"Patch Set 1:\\n\\nThis change is being verified in lookahead for the following manifests along with other changes as detailed below:\\n\\n\\n\\n\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\n\\ngit-android.quicinc.com/platform/manifest:kk:default.xml\\n\\n\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\n\\nhttps://commander.qualcomm.com/commander/pages/SimplifiedJobView/LoadComponent_run?jobId\\u003d3217515\\n\\n--------------------------------------------------------------------------------------------------------------------------------------------------------------------------\\n\\n  o https://review-android.quicinc.com/#change,739919\\n\\n\\n\\nPlease note that verification of all changes in this batch need to be successful before this change can be merged.\\n\\nPLEASE DO NOT UPLOAD A NEW PATCH SET, OR REMOVE APPROVALS UNTIL THE VERIFICATION IS COMPLETE.\\n"},{"timestamp":1399418924,"reviewer":{"name":"Linux Build Service Account","email":"lnxbuild@localhost","username":"lnxbuild"},"message":"Patch Set 1:\\n\\nThis change is being verified in lookahead for the following manifests along with other changes as detailed below:\\n\\n\\n\\n\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\n\\ngit-android.quicinc.com/platform/manifest:kk:default.xml\\n\\n\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\n\\nhttps://commander.qualcomm.com/commander/pages/SimplifiedJobView/LoadComponent_run?jobId\\u003d3217517\\n\\n--------------------------------------------------------------------------------------------------------------------------------------------------------------------------\\n\\n  o https://review-android.quicinc.com/#change,739919\\n\\n\\n\\nPlease note that verification of all changes in this batch need to be successful before this change can be merged.\\n\\nPLEASE DO NOT UPLOAD A NEW PATCH SET, OR REMOVE APPROVALS UNTIL THE VERIFICATION IS COMPLETE.\\n"},{"timestamp":1399422861,"reviewer":{"name":"Klocwork Automation User","email":"kwuser@localhost","username":"kwuser"},"message":"Patch Set 1: Verified\\n\\nSuccessful klocwork verification. You may find the results of the verification by following the link(s) below:\\n\\nhttps://commander.qualcomm.com/commander/pages/SimplifiedJobView/LoadComponent_run?jobId\\u003d3217513\\n\\n"},{"timestamp":1399427087,"reviewer":{"name":"Linux Build Service Account","email":"lnxbuild@localhost","username":"lnxbuild"},"message":"Patch Set 1: Verified\\n\\nSuccessful lookahead verification. You may find the results of the verification by following the link(s) below:\\n\\nhttps://commander.qualcomm.com/commander/pages/SimplifiedJobView/LoadComponent_run?jobId\\u003d3217515\\n\\n"},{"timestamp":1399427807,"reviewer":{"name":"Linux Build Service Account","email":"lnxbuild@localhost","username":"lnxbuild"},"message":"Patch Set 1:\\n\\nSuccessful lookahead verification. You may find the results of the verification by following the link(s) below:\\n\\nhttps://commander.qualcomm.com/commander/pages/SimplifiedJobView/LoadComponent_run?jobId\\u003d3217517\\n\\n"},{"timestamp":1399428952,"reviewer":{"name":"PATCHSET LOCK CNSS GERRIT","email":"cgpl@localhost","username":"cgpl"},"message":"Patch Set 1: Patch Set Locked\\n\\n"},{"timestamp":1399433104,"reviewer":{"name":"Preflight Locking User","email":"preflight@localhost","username":"preflight"},"message":"Patch Set 1: Developer Build and Test Successful\\n\\nLocked for preflight"},{"timestamp":1399433250,"reviewer":{"name":"Linux Build Service Account","email":"lnxbuild@localhost","username":"lnxbuild"},"message":"Patch Set 1:\\n\\nThis change is being verified for the following manifests along with other changes as detailed below:\\n\\n\\n\\n\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\n\\ngit-android.quicinc.com/platform/manifest:kk:default.xml\\n\\n\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\n\\nhttps://commander.qualcomm.com/commander/pages/SimplifiedJobView/LoadComponent_run?jobId\\u003d3219556\\n\\n--------------------------------------------------------------------------------------------------------------------------------------------------------------------------\\n\\n  o https://review-android.quicinc.com/#change,735646\\n\\n  o https://review-android.quicinc.com/#change,725038\\n\\n  o https://review-android.quicinc.com/#change,707889\\n\\n  o https://review-android.quicinc.com/#change,733482\\n\\n  o https://review-android.quicinc.com/#change,734797\\n\\n  o https://review-android.quicinc.com/#change,738976\\n\\n  o https://review-android.quicinc.com/#change,739919\\n\\n  o https://review-android.quicinc.com/#change,738249\\n\\n  o https://review-android.quicinc.com/#change,740118\\n\\n  o https://review-android.quicinc.com/#change,717048\\n\\n  o https://review-android.quicinc.com/#change,717049\\n\\n  o https://review-android.quicinc.com/#change,717050\\n\\n  o https://review-android.quicinc.com/#change,728537\\n\\n  o https://review-android.quicinc.com/#change,728778\\n\\n  o https://review-android.quicinc.com/#change,728784\\n\\n  o https://review-android.quicinc.com/#change,729018\\n\\n  o https://review-android.quicinc.com/#change,729147\\n\\n  o https://review-android.quicinc.com/#change,731124\\n\\n  o https://review-android.quicinc.com/#change,731160\\n\\n  o https://review-android.quicinc.com/#change,731551\\n\\n  o https://review-android.quicinc.com/#change,733219\\n\\n  o https://review-android.quicinc.com/#change,734250\\n\\n  o https://review-android.quicinc.com/#change,734472\\n\\n  o https://review-android.quicinc.com/#change,734487\\n\\n  o https://review-android.quicinc.com/#change,734503\\n\\n  o https://review-android.quicinc.com/#change,734889\\n\\n  o https://review-android.quicinc.com/#change,734923\\n\\n  o https://review-android.quicinc.com/#change,735244\\n\\n  o https://review-android.quicinc.com/#change,735559\\n\\n  o https://review-android.quicinc.com/#change,736352\\n\\n  o https://review-android.quicinc.com/#change,729385\\n\\n\\n\\n\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\n\\ngit-android.quicinc.com/mdm/manifest:master:default.xml\\n\\n\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\n\\nhttps://commander.qualcomm.com/commander/pages/SimplifiedJobView/LoadComponent_run?jobId\\u003d3219555\\n\\n--------------------------------------------------------------------------------------------------------------------------------------------------------------------------\\n\\n  o https://review-android.quicinc.com/#change,725038\\n\\n  o https://review-android.quicinc.com/#change,707889\\n\\n  o https://review-android.quicinc.com/#change,738249\\n\\n  o https://review-android.quicinc.com/#change,740118\\n\\n  o https://review-android.quicinc.com/#change,717048\\n\\n  o https://review-android.quicinc.com/#change,717049\\n\\n  o https://review-android.quicinc.com/#change,717050\\n\\n  o https://review-android.quicinc.com/#change,729385\\n\\n\\n\\n\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\n\\ngit-android.quicinc.com/platform/manifest:master_64:default.xml\\n\\n\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\n\\nhttps://commander.qualcomm.com/commander/pages/SimplifiedJobView/LoadComponent_run?jobId\\u003d3219557\\n\\n--------------------------------------------------------------------------------------------------------------------------------------------------------------------------\\n\\n  o https://review-android.quicinc.com/#change,735646\\n\\n  o https://review-android.quicinc.com/#change,725038\\n\\n  o https://review-android.quicinc.com/#change,707889\\n\\n  o https://review-android.quicinc.com/#change,733482\\n\\n  o https://review-android.quicinc.com/#change,734797\\n\\n  o https://review-android.quicinc.com/#change,738976\\n\\n  o https://review-android.quicinc.com/#change,738249\\n\\n  o https://review-android.quicinc.com/#change,740118\\n\\n  o https://review-android.quicinc.com/#change,717048\\n\\n  o https://review-android.quicinc.com/#change,717049\\n\\n  o https://review-android.quicinc.com/#change,717050\\n\\n  o https://review-android.quicinc.com/#change,729385\\n\\n\\n\\nPlease note that verification of all changes in this batch need to be successful before this change can be merged.\\n\\nPLEASE DO NOT UPLOAD A NEW PATCH SET, OR REMOVE APPROVALS UNTIL THE VERIFICATION IS COMPLETE.\\n"},{"timestamp":1399434561,"reviewer":{"name":"Preflight Locking User","email":"preflight@localhost","username":"preflight"},"message":"Patch Set 1: Not developer verified\\n\\nUnlocked"},{"timestamp":1399434591,"reviewer":{"name":"Linux Build Service Account","email":"lnxbuild@localhost","username":"lnxbuild"},"message":"Patch Set 1:\\n\\n\\nAborted verification due to sibling job failure as part of parallelverification. This change will get picked up in subsequent verification cycles. No action is needed.\\n\\n"},{"timestamp":1399435613,"reviewer":{"name":"Preflight Locking User","email":"preflight@localhost","username":"preflight"},"message":"Patch Set 1: Developer Build and Test Successful\\n\\nLocked for preflight"},{"timestamp":1399435770,"reviewer":{"name":"Linux Build Service Account","email":"lnxbuild@localhost","username":"lnxbuild"},"message":"Patch Set 1:\\n\\nThis change is being verified for the following manifests along with other changes as detailed below:\\n\\n\\n\\n\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\n\\ngit-android.quicinc.com/platform/manifest:kk:default.xml\\n\\n\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\n\\nhttps://commander.qualcomm.com/commander/pages/SimplifiedJobView/LoadComponent_run?jobId\\u003d3219789\\n\\n--------------------------------------------------------------------------------------------------------------------------------------------------------------------------\\n\\n  o https://review-android.quicinc.com/#change,737413\\n\\n  o https://review-android.quicinc.com/#change,716076\\n\\n  o https://review-android.quicinc.com/#change,737755\\n\\n  o https://review-android.quicinc.com/#change,739365\\n\\n  o https://review-android.quicinc.com/#change,703116\\n\\n  o https://review-android.quicinc.com/#change,728537\\n\\n  o https://review-android.quicinc.com/#change,728778\\n\\n  o https://review-android.quicinc.com/#change,728784\\n\\n  o https://review-android.quicinc.com/#change,729018\\n\\n  o https://review-android.quicinc.com/#change,729147\\n\\n  o https://review-android.quicinc.com/#change,731124\\n\\n  o https://review-android.quicinc.com/#change,731160\\n\\n  o https://review-android.quicinc.com/#change,731551\\n\\n  o https://review-android.quicinc.com/#change,733219\\n\\n  o https://review-android.quicinc.com/#change,734250\\n\\n  o https://review-android.quicinc.com/#change,734472\\n\\n  o https://review-android.quicinc.com/#change,734487\\n\\n  o https://review-android.quicinc.com/#change,734503\\n\\n  o https://review-android.quicinc.com/#change,734889\\n\\n  o https://review-android.quicinc.com/#change,734923\\n\\n  o https://review-android.quicinc.com/#change,735244\\n\\n  o https://review-android.quicinc.com/#change,735559\\n\\n  o https://review-android.quicinc.com/#change,736352\\n\\n  o https://review-android.quicinc.com/#change,733482\\n\\n  o https://review-android.quicinc.com/#change,734797\\n\\n  o https://review-android.quicinc.com/#change,735646\\n\\n  o https://review-android.quicinc.com/#change,738976\\n\\n  o https://review-android.quicinc.com/#change,739919\\n\\n  o https://review-android.quicinc.com/#change,740134\\n\\n  o https://review-android.quicinc.com/#change,707889\\n\\n  o https://review-android.quicinc.com/#change,717048\\n\\n  o https://review-android.quicinc.com/#change,717049\\n\\n  o https://review-android.quicinc.com/#change,717050\\n\\n  o https://review-android.quicinc.com/#change,725038\\n\\n  o https://review-android.quicinc.com/#change,729385\\n\\n  o https://review-android.quicinc.com/#change,738249\\n\\n  o https://review-android.quicinc.com/#change,734263\\n\\n\\n\\n\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\n\\ngit-android.quicinc.com/mdm/manifest:master:default.xml\\n\\n\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\n\\nhttps://commander.qualcomm.com/commander/pages/SimplifiedJobView/LoadComponent_run?jobId\\u003d3219788\\n\\n--------------------------------------------------------------------------------------------------------------------------------------------------------------------------\\n\\n  o https://review-android.quicinc.com/#change,716076\\n\\n  o https://review-android.quicinc.com/#change,737755\\n\\n  o https://review-android.quicinc.com/#change,703116\\n\\n  o https://review-android.quicinc.com/#change,707889\\n\\n  o https://review-android.quicinc.com/#change,717048\\n\\n  o https://review-android.quicinc.com/#change,717049\\n\\n  o https://review-android.quicinc.com/#change,717050\\n\\n  o https://review-android.quicinc.com/#change,725038\\n\\n  o https://review-android.quicinc.com/#change,729385\\n\\n  o https://review-android.quicinc.com/#change,738249\\n\\n\\n\\n\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\n\\ngit-android.quicinc.com/platform/manifest:master_64:default.xml\\n\\n\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\u003d\\n\\nhttps://commander.qualcomm.com/commander/pages/SimplifiedJobView/LoadComponent_run?jobId\\u003d3219790\\n\\n--------------------------------------------------------------------------------------------------------------------------------------------------------------------------\\n\\n  o https://review-android.quicinc.com/#change,716076\\n\\n  o https://review-android.quicinc.com/#change,737755\\n\\n  o https://review-android.quicinc.com/#change,739365\\n\\n  o https://review-android.quicinc.com/#change,703116\\n\\n  o https://review-android.quicinc.com/#change,733482\\n\\n  o https://review-android.quicinc.com/#change,734797\\n\\n  o https://review-android.quicinc.com/#change,735646\\n\\n  o https://review-android.quicinc.com/#change,738976\\n\\n  o https://review-android.quicinc.com/#change,740134\\n\\n  o https://review-android.quicinc.com/#change,707889\\n\\n  o https://review-android.quicinc.com/#change,717048\\n\\n  o https://review-android.quicinc.com/#change,717049\\n\\n  o https://review-android.quicinc.com/#change,717050\\n\\n  o https://review-android.quicinc.com/#change,725038\\n\\n  o https://review-android.quicinc.com/#change,729385\\n\\n  o https://review-android.quicinc.com/#change,738249\\n\\n\\n\\nPlease note that verification of all changes in this batch need to be successful before this change can be merged.\\n\\nPLEASE DO NOT UPLOAD A NEW PATCH SET, OR REMOVE APPROVALS UNTIL THE VERIFICATION IS COMPLETE.\\n"},{"timestamp":1399436746,"reviewer":{"name":"Preflight Locking User","email":"preflight@localhost","username":"preflight"},"message":"Patch Set 1: Not developer verified\\n\\nUnlocked"},{"timestamp":1399436759,"reviewer":{"name":"Linux Build Service Account","email":"lnxbuild@localhost","username":"lnxbuild"},"message":"Patch Set 1:\\n\\n\\nAborted verification due to sibling job failure as part of parallelverification. This change will get picked up in subsequent verification cycles. No action is needed.\\n\\n"},{"timestamp":1399437231,"reviewer":{"name":"Preflight Locking User","email":"preflight@localhost","username":"preflight"},"message":"Patch Set 1: Developer Build and Test Successful\\n\\nLocked for preflight"}]}\n', '{"type":"stats","rowCount":1,"runTimeMilliseconds":4}\n']
dict_data =json.loads(str(''.join([item.replace('\n', '') for item in gerritinfo])))
for c in dict_data['comments']:
    if c['reviewer']['name'].startswith('Klocwork'): # you can use exact search
        print c['message']

Error:

Traceback (most recent call last):
  File "test.py", line 3, in <module>
    dict_data =json.loads(str(''.join([item.replace('\n', '') for item in gerritinfo])))
  File "/usr/lib/python2.7/json/__init__.py", line 326, in loads
    return _default_decoder.decode(s)
  File "/usr/lib/python2.7/json/decoder.py", line 369, in decode
    raise ValueError(errmsg("Extra data", s, end, len(s)))
ValueError: Extra data: line 1 column 26242 - line 1 column 26295 (char 26242 - 26295)

4 个答案:

答案 0 :(得分:5)

仅为字符串替换方法,而不是列表。所以我们提到特定列表值的位置

dict_data =gerritinfo[0].replace('\n','')

如果你想要dict_data中的总列表值意味着你可以使用for循环

a=[item.replace('\n', '') for item in gerritinfo]
print a

答案 1 :(得分:4)

如果您只想删除列表中的\n,则可以使用以下代码。

gerritinfo = [
    '{"project":... ... Locked for preflight"}]}\n',
    '{"type":"stats","rowCount":1,"runTimeMilliseconds":4}\n'
]
print ''.join([item.rstrip('\n') for item in gerritinfo])

<强>更新

以下代码可能有效。如果我没有误解你的问题。

import json
# gerritinfo = [....]
dict_data =json.loads(gerritinfo[0])
for c in dict_data['comments']:
    if c['reviewer']['name'].startswith('Klocwork'): # you can use exact search
        print c['message']

输出:

  

补丁集1:

     

此更改正在klocwork中验证以下清单   以及下面详述的其他更改:

     

=============================================== ======================================

     

git-android.quicinc.com/platform/manifest:kk:default.xml

     

=============================================== ======================================

     

https://commander.qualcomm.com/commander/pages/SimplifiedJobView/LoadComponent_run?jobId=3217513

     
     

o https://review-android.quicinc.com/#change

     

请注意,需要验证此批次中的所有更改   在此变更之前可以合并。

     

请不要上传新的补丁集,或取消批准   验证完成。

     

补丁集1:已验证

     

成功的klocwork验证。你可能会找到结果   通过以下链接进行验证:

     

https://commander.qualcomm.com/commander/pages/SimplifiedJobView/LoadComponent_run?jobId=3217513

答案 2 :(得分:0)

由于gerritinfo是一个列表,因此您必须使用列表中的每个字符串访问.replace()。这是一个使用列表理解的方法:

import json
gerritinfo=['{"project":... ... Locked for preflight"}]}\n', '{"type":"stats","rowCount":1,"runTimeMilliseconds":4}\n']

dict_data =json.loads(str(''.join([item.replace('\n', '') for item in gerritinfo])))
for c in dict_data['comments']:
    if c['reviewer']['name'].startswith('Klocwork'): # you can use exact search
        print c['message']

使用列表理解,我们遍历gerritinfo中的每个项目,然后在其上调用.replace()

以下是使用列表理解的一个小例子:

>>> squares = range(1, 11)
>>> squares
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
>>> squares = [x**2 for x in squares]
>>> squares
[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
>>> 

答案 3 :(得分:0)

UIViewController

这适用于列表。你基本上是从列表的元素中删除字符。