ホームページ  >  記事  >  バックエンド開発  >  Lao Qi から学ぶ Python と文字列で遊ぶ (2) 更新

Lao Qi から学ぶ Python と文字列で遊ぶ (2) 更新

WBOY
WBOYオリジナル
2016-06-16 08:41:291022ブラウズ

2 つの文字列を連結する方法については、前の章で説明しました。レビュー:

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

>>> a= 'py'
>>> b= 'ソン'
>>> a+b
'パイソン'

これは 1 つの方法であるため、別の方法があることを意味します。

文字列の接続方法2

方法 2 について説明する前に、プレースホルダーとは何かについて説明します。以前に変数 (パラメーター) を説明したときに、プレースホルダーについてさらに厳密に定義します。

百度百科事典からの定義:

名前が示すように、プレースホルダーは固定位置を占め、コンテンツが追加されるのを待つシンボルです。
この定義に従って、Python ではいくつかのプレースホルダーが指定されます。これらのプレースホルダーは、その位置にどのような種類の値を入力するかを説明するために使用されます。当面は 2 つのプレースホルダーを示します: %d - 位置が整数であることを示します。 s - 位置が文字列であることを示します。具体的な例を見てみましょう:

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

>>> print "1 つは %d"%1
1 は 1

印刷する必要のあるコンテンツには %d プレースホルダーがあります。これは、その位置に整数を配置する必要があることを意味します。 2 番目の % の後には、その位置に何を配置するかが続きます。ここに整数 1 があります。次の操作を行うことで、より明確に理解できます:

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

>>> a=1
>>> タイプ(a)
#a は整数です
>>> b="1"
>>> タイプ(b)
#b は文字列です
>>> print "1 つは %d"%a
1 は 1
>>> print "one is %d"%b #エラーが報告されました。このプレースホルダーは文字列ではなく整数に配置する必要があります。
トレースバック (最後の呼び出し):
ファイル「」、1 行目、
TypeError: %d 形式: str
ではなく、数値が必要です

同様に%sに相当する位置には文字列を配置しますが、整数を配置してもOKです。文字列に変換されているだけです。しかし、これはお勧めできません。将来、mysql (データベースの一種) を使用する場合は、%s をプレースホルダーとして使用する必要があります。これは後の話です。聞いてください。

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

>>> 「1 つは %s」%b
1 は 1
>>> print "1 つは %s"%a #String が含まれます
1 は 1

わかりました。長々と説明してきましたが、プレースホルダーは理解できましたか?次に、プレースホルダーを使用して文字列を連結します。面白くないですか?

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

>>> a = "py"
>>> b = "ソン"
>>> print "%s%s"%(a,b) #Note
パイソン

注: 注意: プレースホルダーが 2 つある場合は、この 2 つの位置に何かを入れる必要があり、代表的なものを括弧で囲み、カンマ (半角) で区切る必要があります。

文字列コピー

特定の文字列に接続する変数があり、この文字列に別の変数も接続したいと考えています。 1 つの方法は、文字列を片側に書くことです。この方法は少し不器用ですが、十分に短くても大丈夫です。でも長いと面倒ですよね。文字列をコピーする方法は次のとおりです:

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

>>> a = 「私の名前は LaoQi です。Python が好きで、Python の学習を教えます。」
>>>
私の名前は LaoQi です。Python が好きで、Python の学習を教えます。
>>> b = a
>>> プリント b
私の名前は LaoQi です。Python が好きで、Python の学習を教えます。
>>>
私の名前は LaoQi です。Python が好きで、Python の学習を教えます。

コピーは、割り当てと同じように非常に簡単です。 b=a により、紐は元々 a につながっていることがわかります。a は手から紐を b に渡し、両者とも紐を指すことができます。

文字列の長さ

文字列に何文字あるかを知る方法の 1 つは、画面を見つめながら先頭から数えて文字数を数えることです。ああ、仕事をしているのはコンピューターではなく、キーボードです。剣士ではなくキーヤー。ソードマンは剣を武器として使用する騎士であり、キーラーはキーボードを武器として使用する騎士です。もちろん、ユエ・ブクンらのような、英雄の域に達した最高レベルの雌犬である謙虚なゲストもいます。

重要なのは、次のように文字列の長さをカウントすることです:

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

>>> a="こんにちは"
>>>レン(a)
5

関数len(object)を使用します。得られる結果は文字列の長さです。

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

>>> m = len(a) #結果を返し、変数に代入します
>>>
5
>>> type(m) #この戻り値(変数)は整数型です
<「int」と入力>

大文字と小文字の変換

英語の場合、大文字と小文字の変換が必要な場合があります。最も有名なキャメルケースの名前には、大文字と小文字の組み合わせが含まれています。ご興味がございましたら、ここにアクセスして、文字列をキャメルケースの名前付け形式に自動的に変換する方法をご覧ください。

Python には以下の組み込み関数が多数あり、さまざまなタイプの大文字と小文字の変換を実装するために使用されます

S.upper() #S の文字は大文字です
S. lower() #S の文字は小文字です
S.capitalize() #最初の文字を大文字にします
S.istitle() #単語の最初の文字が大文字で残りが小文字かどうかは、ネチズンの Bai Feather がここでの表現が不正確であると指摘していることに注意してください。彼には本当に感謝しています。読者がこれらの大文字化の問題についてより深く理解できるように、次の例を書き直しましたので、確認してください。ホワイトフェザーさんに改めて感謝申し上げます。
S.isupper() #S の文字がすべて大文字かどうか
S.is lower() #S の文字がすべて小文字であるかどうか
例を参照:

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

>>> a = "qiwsir,python"
>>> a.upper() #小文字を完全に大文字に変換します
「キウサー、ニシキヘビ」
>>> a #元のデータ オブジェクトは変更されていません
「qiwsir、Python」
>>> b = a.upper()
>>> 「キウサー、ニシキヘビ」
>>> c = b. lower() #すべての小文字を大文字にプログラムします
>>>c
「qiwsir、Python」
>>>

「qiwsir、Python」
>>> a.capitalize() #文字列の最初の文字を大文字に変更します
「クィーサー、ニシキヘビ」
>>> a #元のデータ オブジェクトは変更されていません
「qiwsir、Python」
>>> b = a.capitalize() # 新しい
を作成しました >>> 「クィーサー、ニシキヘビ」

>>> a = "qiwsir,github" #ここの問題はネチズンの Bai Feather さんに指摘していただき、ありがとうございました。

>>> a.istitle()

誤り
>>> a = "QIWSIR" #すべて大文字の場合は False を返します
>>> a.istitle()
誤り
>>> a = "qIWSIR"
>>> a.istitle()
誤り
>>> a = "Qiwsir,github" #その場合は False を返します
>>> a.istitle()
誤り
>>> a = "Qiwsir" #これは真実です
>>> a.istitle()
本当です
>>> a = 'Qiwsir,Github' #これも真実です
>>> a.istitle()
本当です

>>> a = "クィーサー"

>>> a.isupper()

誤り
>>> a.upper().isupper()
本当です
>>> a.is lower()
誤り
>>> a. lower().is lower()
本当です


Baifeather ネチズンの指摘に従って、さらに調査してみましょう。次のことができます。

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

>>> a = "これは本です"
>>> a.istitle()
誤り
>>> b = a.title() #これにより、すべての単語の最初の文字が大文字に変換されます
>>> 「これは本です」
>>> a.istitle() #各単語の最初の文字が大文字かどうかを判断します
誤り

文字列の問題、この講義はまだ終わらないようです。次の講義に進みます。読者の中には、上記は実際の戦闘でどのように使用されるのかと疑問に思う人もいるかもしれません。私が学んだことを活用できるかどうかを確認するために、ゲスト向けに実践的なシナリオを作成しようとしているところです。

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