1. TOP
  2. プログラム
  3. ソフト
  4. python
  5. python標準ライブラリ3

python標準ライブラリ3

スタック+キュー=デック

deque(デックと発音する)は、両端キューのことpで、スタックと
キューの両方の機能を持っている。
シーケンスのどちらの端でも要素を追加、削除できるようにしたい
ときに便利です。
次のサンプルは、単語の両端から中央に向かって文字をひとつずつ
処理し、単語が回文になっているかチェックする
popleft()はデックから左端の要素を削除して返す。pop()は右端
の要素を削除して返す。これらを組み合わせれば、両端から中央に向かって
文字をひとつずつ処理できる。両端の文字が等しければ、中央に到達するまで
文字の削除を続けていく

deque

def palindrome(word):
from collection import deque
dq = deque(word)
while len(dq) > 1:
if dq.popleft() != dq.pop():
return False
return True

palindrome('a')
True

palindrome('racecar')
True

palindrome('')
True

palindrome('radar')
True

palindrome('halibut')
False

スライスを使う

def another_palindrome(word):
return word == word[::-1]

another_palindrome('radar')
True

another_palindrome('halibut')
False

 

9:犯人捜し本能を抑えるには

誰かを責めても問題は解決しないと肝に銘じよう

9:焦り本能を抑えるには

小さな一歩を重ねよう