951947697 发表于 2020-11-17 09:38:19

课后作业41讲

class Nint(int):
      def __new__(cls, arg=0):
                if isinstance(arg, str):
                        total = 0
                        for each in arg:
                              total += ord(each)
                        arg = total
                return int.__new__(cls, arg)


这段代码看不懂.
                       total = 0
                        for each in arg:
                              total += ord(each)
                            arg = total



为啥不可以直接:total = ord(arg)
                        arg = total


求大神解答下!!!!!!

suchocolate 发表于 2020-11-17 09:51:06

1.把字符串各字符转换成ascii编码合起来。
2.ord只接受1个字符。

951947697 发表于 2020-11-17 11:07:06

suchocolate 发表于 2020-11-17 09:51
1.把字符串各字符转换成ascii编码合起来。
2.ord只接受1个字符。

明白了 谢谢!!!!
页: [1]
查看完整版本: 课后作业41讲