ホームページ  >  記事  >  バックエンド開発  >  Python は単語反転効果を実装します

Python は単語反転効果を実装します

巴扎黑
巴扎黑オリジナル
2017-08-08 14:49:091880ブラウズ

この記事では主に Python の文字列処理における単語の反転の方法を詳しく紹介します。興味のある方は参考にしてください。

Python の文字列処理を学ぶ上で、シンプルですが非常に便利な方法があります。単語に従って文字列を変更し、元のスペースを保持します:
例: ' I love China! '
変換: ' China! love I '

2 つの解決策:

オプション 1: 文字列を前からトラバースします。最初の文字がスペースである場合は、最初の文字がスペースでなくなるまで直接スキップします。それ以外の場合は、単語 Reverse を置き換えてから、後方に移動して、最後に を使用します。文字列全体を後ろから前に出力するためのreserveメソッド。

オプション 2: 逆変換に re (正則化) パッケージを直接使用します

コードは次のとおりです:


import re

def reserve(str_list, start, end):
  while start <= end:
    str_list[start], str_list[end] = str_list[end], str_list[start]
    end -= 1
    start += 1

str = &#39; I love china!  &#39;
str_list = list(str)
print(str_list)
i = 0
print(len(str_list))

# 从前往后遍历list,如果碰到空格,就调用反转函数,不考虑单个字符情况
while i < len(str_list):
  if str_list[i] != &#39; &#39;:
    start = i
    end = start + 1
    print(end)
    while (end < len(str_list)) and (str_list[end]!=&#39; &#39;):
      end += 1
    if end - start > 1:
      reserve(str_list, start, end-1)
      i = end
    else:
      i = end
  else:
    i += 1

print(str_list)
str_list.reverse()
print(&#39;&#39;.join(str_list))

# 采用正则表达式操作
str_re = re.split(r&#39;(\s+)&#39;,str)

str_re.reverse()
str_re = &#39;&#39;.join(str_re)
print(str_re)

以上がPython は単語反転効果を実装しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。