猿问

没有筛算法或 Python 库的圆形素数

我对 Python 非常陌生,我只是在深入研究整个类/对象的理解领域。这是我真正在努力解决的问题:如果我在文件duck.py 中有一个带有属性和成员函数的“duck”类,并且我正在使用witch.py 中的一个函数来接收duck 类。我发出import 语句


import duck

然后在我的函数中:


def doesitfloat(myduck, mywitch):

    if myduck.boyancy() == 'floats':

    ...

“doesitfloat”如何知道 myduck 是具有所述属性/成员函数的鸭子对象?我想我了解了类的一般概念,但是当我创建一个类时,我如何在其他地方使用它?


编辑... 我的第一篇文章和 python 新手 - 我能说什么。让我阐述..


在我的类文件duck.py 中,我有:


class duck:

    def buoyancy(self):

        return True

在另一个文件 witch.py 中,我有我的 doitfloat() 函数和适当的导入


import duck


def doesitfloat(myduck, mywitch)

    if myduck.buoyancy() == 'floats':

    ...

'doesitfloat' 如何知道 myduck 是对象还是类型鸭子?现在,在另一段代码中 - 甚至可能在第三个文件中,声明了适当的导入,我有以下内容:


someduck = duck

somewitch = witch  


testingsomething = doesitfloat(someduck, somewitch)

很明显,这个类是在我的第三个文件中声明的,并且在本地我已经声明了 someduck 和 somewitch 对象。然而,函数 'doesitfloat' 从未真正被告知它是一个鸭子对象。在其他语言中,'doesitfloat' 的声明会明确说明参数的类型,但是 python... ?? 对不起,这让我感到困惑。


守着一只汪
浏览 152回答 2
2回答

慕哥9229398

将数字相乘,将数字相加,得到数字的位数。将相关联的三元组结果存储为字符串。然后比较每个字符串的结果。E.g:   137 maps to "(21, 11, 3)"        173 maps to "(21, 11, 3)" 然后您只需从数组 A 中获取每个字符串的索引,其中索引是素数。 j = 0; For or while loop:      j = A.indexOf(someString, j+1);对于索引 j,您需要 someString 的下一次出现。

哆啦的时光机

与在字符串和整数之间来回切换不同,单独使用整数更容易(也更快)。通过取模 10 从数字中提取最后一位数字。使用整数除以 10 保留其余数字。将最后一位数字提高到适当的 10 次幂(取其余数字的对数)并将其添加到剩余数字中数字。这使您可以旋转原始数字。is_prime当您传递n 的平方根时,可以通过停止循环来改进您的功能。如果n是合数,则其因数中至少有一个必须小于或等于其平方根;例如,如果n = p × q,则p和q等于平方根,或者其中一个小于平方根,另一个大于平方根。我会让你把这些想法简化为代码。
随时随地看视频慕课网APP

相关分类

Python
我要回答