微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

用简单的话来说,这段 Python 代码做了什么?

如何解决用简单的话来说,这段 Python 代码做了什么?

以下是从文件中导入数据的示例内容

    X,Y,80
    Z,W,100

下面是处理上面数据内容代码部分(我试图理解):

    for new in content:
       if new != '\n':
          addIt = new[:-1].split(',') #remove trailing \n
          data.append(addIt)

这导致“数据”作为列表列表的以下输出

[['X','Y',' 80'],['Z','W',' 100']]

有人可以向我解释一下,代码是如何用简单的英语完成的吗?

请纠正我对以下评论假设的错误之处:

       for new in content:  #each separate row is taken from the list?
          if new != '\n':   #if "new" does not consist a break of newline?
             addIt = new[:-1].split(',') #splits each row from comma and then what it does with -1?
             data.append(addIt) #this is ok

先谢谢你。如果您能用简单的英语解释,我们将不胜感激。

解决方法

这行代码:

addIt = new[:-1].split(',')

第一部分:new[:-1]new 中除最后一个字符以外的所有字符,然后 .split(',') 将剩余的字符串拆分为由逗号分隔的项目列表。

,
for new in content:

遍历文件中的每一行。每行都包含在变量 new 中 - 这些行的尾随 \n 附加到它们。所以它们看起来像:"X,Y,80\n" etc.

if new != '\n':

如果该行只是换行符,则忽略它。否则处理它。空行将被忽略。

addIt = new[:-1].split(',')

new[:-1] 是行 - 减去尾随换行符 \n - 所以这是行的内容,即 "X,80"

然后将其除以 "," 得到 ["X","Y","80"]

data.append(addIt)

将此列表附加到最终结果

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。