首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >文本文件中的Python 3回文

文本文件中的Python 3回文
EN

Stack Overflow用户
提问于 2016-11-16 02:14:27
回答 2查看 2.6K关注 0票数 1
代码语言:javascript
运行
复制
with open('33.txt') as text:
    for line in text:
        line2 = line[:][::-1]
        if line == line2:
            print ('Palindrome!')

我试图检查文件中的文本行是否为回文,但当我运行代码时,似乎只检查最后一行是否为回文。我希望代码检查回文的每一行,我已经做了类似的程序,但是在代码中使用了字符串,我正在使用类似的方法,但是我不知道为什么它不能工作。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-11-16 02:22:12

问题是,除了最后一行之外,所有行的末尾都有换行符,需要删除。您可以用strip解决这个问题。

代码语言:javascript
运行
复制
with open('33.txt') as text:
    for line in text:
        line = line.strip()
        line2 = line[::-1]
        if line == line2:
            print ('Palindrome!')
票数 4
EN

Stack Overflow用户

发布于 2016-11-16 02:24:18

试一试以下几种方法:

代码语言:javascript
运行
复制
with open('/usr/share/dict/words') as f:
    for line in f:
        line=line.strip()     # You need to remove the CR or you won't find palindromes
        if line==line[::-1]:  # You can test and reverse in one step
            print(line)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40622984

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档