天天看點

回文驗證

a_byte_of_python-v192-for_python_3.0-中文版.pdf 中的一道題:

練習題:

檢測一個文本是否為回文應該忽略标點,空格和大小寫。

例如”rise to vote,

sir.”同樣是一個回文,但是我們目前的例子無法識别它。你能

改善這個例子讓它做都這點嗎?

代碼有點挫,莫笑:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

<code>def</code> <code>reverse(text):</code>

<code>    </code><code>return</code>

<code>text[::</code><code>-</code><code>1</code><code>]</code>

<code>def</code> <code>is_huiwen(text):</code>

<code>text</code><code>=</code><code>=</code>

<code>reverse(text)</code>

<code>while</code>

<code>true</code><code>:</code>

<code>    </code><code>somethine</code><code>=</code>

<code>input</code><code>(</code><code>‘enter text:‘</code><code>)</code>

<code>somethine.lower()</code>

<code>    </code><code>alist</code><code>=</code>

<code>[]</code>

<code>    </code> 

<code>    </code><code>for</code>

<code>oneword</code><code>in</code>

<code>somethine:</code>

<code>        </code><code>if</code><code>(oneword.isalpha()):</code>

<code>            </code><code>alist.append(oneword)</code>

<code>        </code><code>else</code><code>:</code>

<code>            </code><code>continue</code>

<code>            </code> 

<code>    </code><code>if</code>

<code>(is_huiwen(alist)):</code>

<code>        </code><code>print</code>

<code>(</code><code>"yes,it‘s a huiwen string"</code><code>)</code>

<code>    </code><code>else</code><code>:</code>

<code>        </code><code>print</code><code>(</code><code>"no,it‘s not a huiwen string"</code><code>)</code>