ほとんどの人がC言語を学ぶとき、最初に接触するデータタイプは文字列です。これは、ほとんどのチュートリアルで「Hello world」プログラムがエントリプログラムとして使用され、このプログラムで出力される「Helloworld」が文字列であるためです。 。自然言語処理の研究を行い、Pythonで関連する実験を行った場合、文字列処理における他の言語に対するPythonの明らかな利点を間違いなく理解するでしょう。今日は、Pythonの文字列を見て、その使用法を確認します。
1.Pythonで文字列を宣言する方法
Pythonで文字列を宣言するには、通常3つの方法があります。一重引用符、二重引用符、または三重引用符で囲みます。
といった:
上記から、3つの宣言メソッドの効果はまったく同じであることがわかります。Pythonでは、3つの宣言メソッドを使用して、文字列を同じ意味、つまり「helloworld」と「helloworld」と「 'helloworld」として宣言します。 '違いはありません。しかし、一部の人々は尋ねます:それらは完全に同等であるため、なぜ宣言する3つの方法があるのですか?これらの例を見てみましょう。
これらのメソッドは、より便利で柔軟に使用できるようにPythonで提供されています(もちろん、エスケープ文字を使用して上記のエラーを解決することもできます)。
ここで注意すべきことは、
1)PythonのC言語にはcharのような文字列はありません。つまり、1文字でも文字列です。
2)Pythonで文字列が宣言されると、それを変更することはできません。つまり、特定の位置を再割り当てしてコンテンツを変更することはできません。
2.Pythonの文字列タイプ
Pythonの文字列には、strタイプとunicodeタイプの2つのデータタイプがあります。 strタイプで使用されるASCIIエンコーディングは、中国語を表すことができないことを意味します。ユニコードタイプはユニコードエンコーディングを使用し、中国語、日本語、韓国語などを含む任意の文字を表すことができます。
pythonの文字列で使用されるデフォルトのASCIIエンコーディング。宣言をユニコードタイプとして表示する場合は、文字列の前に「u」または「U」を追加する必要があります。
以下のコードを見てください
print '私'
print u'私'
print 'python'
print u'python'
このコードの結果は次のとおりです。
実行結果から、中国語の場合、ユニコードタイプが使用されておらず、出力が文字化けしていることがわかります。
3.エスケープ文字と元の文字列
C言語と同様に、Pythonにはエスケープ文字があり、バックスラッシュ「\」は次の文字のエスケープを示すために使用されます。
たとえば、上記の例の問題は、エスケープすることで解決できます。
Javaプログラムを作成し、Javaで正規表現を使用したことがある場合は、Javaの正規表現(自分自身)を嫌うかもしれません。また、非常に面倒で面倒です。 Pythonでは、プリミティブ文字列が提供されるため、この問題について心配する必要はありません。名前が示すように、プリミティブ文字の意味を保持します。バックスラッシュとバックスラッシュの後の文字をエスケープせず、元の文字列を宣言します。方法は、文字列の前に「r」または「R」を追加することです。
ここで注意してください:Pythonプログラムが実行されているオペレーティングシステムに関係なく、Pythonの行末は常に「\ n」です。 Linux環境でC言語を作成する場合、新しい行の文字は「\ n」ですが、Windowsでは「\ r \ n」です。さまざまな動作環境によって引き起こされる非互換性を心配せずにPythonプログラムを作成します。
4.ユーザー入力とフォーマットされた出力文字列
キーボードから入力を取得するためにPythonで最も一般的に使用される関数は、raw_input()とinput()です。しかし、これら2つの機能はまったく異なります。
raw_input()は、ユーザーが入力したすべてのものを文字列の形式で返します。
これはinput()の場合ではなく、入力コンテンツの形式に従って戻り形式を決定します(少し混乱する可能性があります)。以下の例を見て理解してください。
この例から明らかなように、2つの違いがわかります。同じ入力123の場合、raw_input()は文字列123を返し、input()は整数123を返します。個人的には、プログラムの不要なトラブルを避けるために、raw_input()を使用して一般的な入力を取得することをお勧めします。
C言語と同様に、Pythonもフォーマットされた出力を提供します。
Pythonでフォーマットされた出力はC言語に似ており、基本的なフォーマットは次のとおりです。
print ‘….%formmat..’ %(var…)
varが1つしかない場合は、括弧を省略できます。
今日、Python文字列について多くの議論がありました。ここでは、基本的な概念と知識のポイントのみを説明します。関連する文字列関数の使用については、APIドキュメントを参照してください。
上記はPythonの文字列の詳細な内容です。Pythonの文字列の詳細については、ZaLou.Cnの他の関連記事に注意してください。
Recommended Posts