Pythonインターネット文字列の準備
インターネット内のさまざまなものを識別するには、同等性についてさまざまな識別を比較する必要があります。比較手順は、アプリケーションドメインによって異なります。たとえば、大文字と小文字を区別しないものなどがあります。これらの種類の情報を確認するには stringprep 使用されます。
RFC 3454は、ネットワークを介して送信する前にUnicode文字列を準備する手順を定義しています。準備手順を経た後、それらは特定の正規化された形式になります。
RFCは、一連のテーブルを定義しています。これらのテーブルは、プロファイルに組み合わせることができます。たとえば、stringprepのプロファイルは nameprepです。 。 nameprepで 、国際化ドメイン名があります
テーブルには、セットの2種類があります。 およびマッピング 。セットテーブルに1つの文字が存在する場合、trueを返し、それ以外の場合はfalseを返します。マッピングテーブルの場合、キーが渡されると、関連付けられた値が返されます。
このモジュールを使用するには、 stringprepをインポートする必要があります コード内のモジュール。
import stringprep
stringprepテーブルは-
ですSr.No。 | |
---|---|
1 | stringprep.in_table_a1(コード) Unicode3.2では署名されていないコードポイントです |
2 | stringprep.in_table_b1(コード) 通常、何にもマッピングされません。 |
3 | stringprep.in_table_b2(コード) コードのマップされた値をテーブルB.2に返します。 NFKCケースフォールディングのマッピング。 |
4 | stringprep.in_table_b3(コード) 正規化なしのケースフォールディングのマッピング。 |
5 | stringprep.in_table_c11(コード) ASCIIスペース文字 |
6 | stringprep.in_table_c12(コード) 非ASCIIスペース文字 |
7 | stringprep.in_table_c11_c12(コード) ASCIIおよび非ASCIIスペース文字の組み合わせ |
8 | stringprep.in_table_c21(コード) ASCII制御文字 |
9 | stringprep.in_table_c22(コード) 非ASCII制御文字 |
10 | stringprep.in_table_c21_c22(コード) ASCIIおよび非ASCII制御文字の組み合わせ |
11 | stringprep.in_table_c3(コード) 個人使用のキャラクター |
12 | stringprep.in_table_c4(コード) 文字以外のコードポイント |
13 | stringprep.in_table_c5(コード) 代理コード |
14 | stringprep.in_table_c6(コード) プレーンテキスト文字には不適切 |
15 | stringprep.in_table_c7(コード) 標準表現には不適切 |
16 | stringprep.in_table_c8(コード) プロパティ変更コードを表示する |
17 | stringprep.in_table_c9(コード) 文字のタグ付け |
18 | stringprep.in_table_d1(コード) 「R」と「AL」の双方向プロパティを持つ文字。 |
19 | stringprep.in_table_d2(code) 「L」双方向プロパティを持つ文字。 |
サンプルコード
import stringprep as sp print('\u0020') #The space character print(sp.in_table_c11('\u0020')) #It is inside the ASCII space characters print(sp.in_table_d2('L')) #Letter L has bidirectional property from left to right print(sp.in_table_d1('L')) #Letter L has no bidirectional property for right to left
出力
True True False
-
Pythonのcasefold()文字列
この関数は、単語の文字を小文字に変換するのに役立ちます。 2つの文字列に適用すると、文字の大文字小文字の種類に関係なく、それらの値と一致する可能性があります。 casefold()の適用 以下の例では、casefold()関数を文字列に適用すると、結果はすべて小文字で出力されます。 例 string = "BestTutorials" # print lowercase string print(" lowercase string: ", string.casefold()) 出力 上記のコードを実行すると、次の結果が得られます- Lowerca
-
PythonでPythonコードを含む文字列を実行するにはどうすればよいですか?
Pythonステートメントを実行する場合は、exec(string)を使用できます。たとえば、 >>> my_code = 'print "Hello World!"' >>> exec(my_code) Hello World! ただし、式の値を評価するだけの場合は、eval()を使用できます。たとえば、 >>> my_expression = "5 + 3" >>> eval(my_expression) 8 注:evalとexecは非常に強力な関数であるため