当前位置: 首页 > 面试题库 >

如何使用Python逻辑检查回文

莫河
2023-03-14
问题内容

我正在尝试使用Python检查回文。我拥有的代码是非常for循环的。

在我看来,当人们从C转到Python时,最大的错误就是尝试使用Python实现C逻辑,这使事情运行缓慢,并且只是没有充分利用该语言。

我在这个网站上看到了。搜索“ C-style for”,即Python没有C-style for循环。可能已经过时,但是我将其解释为意味着Python具有自己的方法。

我尝试环顾四周,但找不到最新的(Python 3)建议。如何在不使用for循环的情况下用Python解决回文挑战?

我已经在C类中完成了此操作,但是我想在Python上基于个人进行操作。问题是来自Euler项目,很好的站点。

def isPalindrome(n):
    lst = [int(n) for n in str(n)]
    l=len(lst)
    if l==0 || l==1:
        return True
    elif len(lst)%2==0:
        for k in range (l)
        #####
    else:
        while (k<=((l-1)/2)):
            if (list[]):
                #####   

for i in range (999, 100, -1):
    for j in range (999,100, -1):
        if isPalindrome(i*j):
            print(i*j)
            break

我在这里错过了很多代码。这五个哈希只是对自己的提醒。

具体问题:

  1. 在C语言中,我将进行一个for循环,将索引0与索引max进行比较,然后将索引0 + 1与max-1进行比较,直到出现某种情况。如何在Python中做到最好?

  2. 我的for循环(范围为(999,100,-1),这是在Python中执行此方法的不好方法吗?

  3. 对于我所处位置的人,是否有人有任何好的建议,网站或资源?我不是程序员,我并不渴望成为一个程序员,我只是想学习足够多的知识,这样当我写我的学士学位论文(电气工程)时,在尝试尝试时不必同时学习适用的编程语言在项目中取得良好的结果。诸如此类的事情“如何从基本的C到Python的出色应用”。

  4. 我也需要学习良好的算法,才能对这个问题做出很好的解决。如果该值为零或一位数字,则它的长度为奇数,并且为偶数长度。我打算写循环…

PS:问题是:找到两个也是回文的3位整数的最高乘积。


问题答案:

确定给定值是否是回文的Python方法:

str(n) == str(n)[::-1]

说明:

  • 我们正在检查的字符串表示形式是否n等于的反向字符串表示形式n
  • [::-1]片采用反相字符串的护理
  • 之后,我们使用 ==


 类似资料:
  • 嗨,我是编程新手,我们的任务是制作一个刽子手游戏。现在我面临的问题是猜测。程序猜对了一切,并且工作正常。虽然它不会打印出中的字母,或者它会打印出1个字母,但当我猜正确时,上一个字母会被覆盖。 那么,有谁能伸出援助之手呢? 这是我的检查代码: }

  • 我试图使用while循环和索引检查回文,返回True或False。我知道,使用for循环,甚至只需一行就可以简单得多:return num[:-1]==num (num是函数中的参数)单击此处查看代码图像 如果有人能告诉我我做错了什么,我很乐意用一段时间来完成这个循环:) 顺便说一下,回文是一个单词或短语,可以用相反的方式阅读,例如:水平,赛车,旋转器等

  • 假设我有这样简单的东西: 如果condition_1为真,java会继续运行并检查condition_2吗?我这么问是因为我知道如果条件1为真,条件2会抛出一个错误,我想知道我是否需要做两个独立的if。

  • 逻辑回归对应线性回归,但旨在解决分类问题,即将模型的输出转换为从 0 到 1 之间的概率值。逻辑回归直接对分类的可能性进行建模,无需事先假设数据的分布。 最理想的转换函数为单位阶跃函数(也称Heaviside函数),但单位阶跃函数是不连续的,没法在实际计算中使用。故而,在分类过程中更常使用对数几率函数(即sigmoid函数): $$f(x)=\frac{1}{1+e^{-x}}$$ 这样,模型就变

  • 问题内容: 因此,我正在与解释器一起玩,并输入以下内容: 最初,我认为这与False和True值有关,因为: 但这似乎无关紧要,因为False始终为0,并且从上述试验看来,它并不是输出的最大价值。 老实说,我在这里看不到这种模式,在文档中也找不到任何东西(老实说,我真的不知道如何有效地寻找它)。 那么,如何 在Python中工作? 问题答案: 从Python文档中: 表达式首先计算; 如果为假,则

  • 我正试图通过逻辑回归来解决给定数据集上的分类问题(这不是问题)。为了避免过度拟合,我试图通过交叉验证来实现它(问题是这样的):在完成程序时,我遗漏了一些东西。我在这里的目的是确定准确性。 但让我具体一点。这就是我所做的: 我把集合分成训练集和测试集 我定义了要使用的对数回归预测模型 我用cross_val_predict法(sklearn.cross_validation)做预测 最后,我测量了精