已有184人关注
关于for [元组] in [元组1,元组2...,元组n]
发表在Python图书答疑 2020-02-19 《零基础学Python》第10章 文件及目录操作 261页-262页
是否精华
版块置顶:

def formatByte(number):

    for (scale,lable) in [(1024*1024*1024,'GB'),(1024*1024,'MB'),(1024,'KB')]:  #这里的元素循环读取出来是什么?

        if number>=scale:    #这里为什么条件解读为“如果文件大小大于或等于1KB”?scale为什么等于1KB?

            return .......#这里省略

        ........

        else:

            byte="%.2f"%(number or 0)   #这里的number or 0 是什么意思?or 0有什么用?是读取number还是0?

            ........

以上就是我的疑惑,很抱歉我没有学分打赏,如果有大佬能够解答一下,感谢万分。

            


分享到:
精彩评论 2
hello_world
学分:154 LV4
2020-02-20
沙发

这里是从列表中获取元组,如果改写成:

for i in [(1024*1024*1024, 'GB'), (1024*1024,'MB'),(1024,'KB')]:
    #省略……

那么i就是一个元组,如果使用元组获取会更容易理解

世说心语。_1582101457
学分:4 LV1
2020-02-20
板凳

hello_world 发表于2020-02-20 12:26

这里是从列表中获取元组,如果改写成:

for i in [(1024*1024*1024, 'GB'), (1024*1024,'MB'),(1024,'KB')]:
    #省略……

那么i就是一个元组,如果使用元组获取会更容易理解

这个函数是用于格式化字节的,把字节转换为kb等单位,所以这个不能用i直接表示。然后我就想知道后面我注释的那些问题,书上解释不太清楚,您能解答一下吗,谢谢!
首页上一页 1 下一页尾页 2 条记录 1/1页
手机同步功能介绍
友情提示:以下图书配套资源能够实现手机同步功能
明日微信公众号
明日之星 明日之星编程特训营
客服热线(每日9:00-17:00)
400 675 1066
mingrisoft@mingrisoft.com
吉林省明日科技有限公司Copyright ©2007-2022,mingrisoft.com, All Rights Reserved长春市北湖科技开发区盛北大街3333号长春北湖科技园项目一期A10号楼四、五层
吉ICP备10002740号-2吉公网安备22010202000132经营性网站备案信息 营业执照