Pythonベース3 Unicode符号化+整数浮動小数点数+ブールタイプ+listリストセット

5368 ワード

1 PythonのUnicode文字列
1.1 ASCII符号化
コンピュータは数字しか処理できないので、テキストを処理するには、まずテキストを数字に変換してから処理しなければなりません.最初のコンピュータは設計時に8ビット(bit)を1バイト(byte)として採用したので、1バイトで表すことができる最大の整数は255(バイナリ11111=10進255)であり、0-255は大文字と小文字の英字、数字、いくつかの記号を表すために使用され、この符号表はASCII符号化と呼ばれ、例えば大文字Aの符号化は65、小文字zの符号化は122である.
1.2 Unicodeコードソース
ASCII符号化については、中国語を表すには、明らかに1バイトでは十分ではなく、少なくとも2バイトが必要であり、ASCII符号化と衝突することはできないため、中国はGB 2312符号化を制定し、中国語を組み込むために使用している.
似たように、日本語や韓国語など他の言語でもこの問題があります.すべての文字の符号化を統一するために、Unicodeが誕生した.Unicodeはすべての言語を1つのコードに統一し、文字化けの問題はなくなります.
Unicodeは通常2バイト(16ビット)で1文字を表し、元の英語符号化は単バイトから二バイトになり、高バイトをすべて0に記入するだけでよい.
1.3 PythonによるUnicodeコードのサポート
Pythonの誕生はUnicode規格よりも早いため、最初のPythonはASCII符号化のみをサポートし、通常の文字列「ABC」はPython内部でASCII符号化され、utf-8はunicode符号化方式の実現方式である.
Pythonは後にUnicodeのサポートを追加し、Unicodeで表される文字列はu'...'出力:中国語
print u'中国語
注意:uを入れないと、中国語が正常に表示されません.
Unicode文字列はuが1つ増えた以外は、通常の文字列と変わらず、エスケープ文字とマルチライン表現は依然として有効です.
print (u'  

')

出力:
中国語
日本語
ハングル
例1:
print (r'''   
     ,
     。
     ,
     。''')

出力:
静かに考える
ベッドの前の月明かり、
疑いは地上の霜だ.
月を見上げて、
頭を下げて故郷を思う.
2 Pythonの整数と浮動小数点数
1)Pythonは整数と浮動小数点数の直接的な4つの混合演算をサポートし、演算規則と数学上の4つの演算規則は完全に一致している.
print (7.5 / 8 + 2.1)#3.0375

2)カッコを使用すると優先度が高くなります.これは数学演算と完全に一致しています.カッコは小かっこしか使用できませんが、カッコは多くのレイヤをネストできます.
3)数学演算とは異なり,Pythonの整数演算結果は依然として整数であり,浮動小数点数演算結果は依然として浮動小数点数である.
Python 2バージョンではPythonの整数除算は、たとえ除かなくても結果は整数であり、残りはそのまま捨てられる.例えば11/4#=>2は11の後ろに.0を付けて浮動小数点数にする必要がありますが、Python 3はこの問題をよく解決しましたprint(11/4)=>2.75
3 Pythonのブールタイプ
Pythonがブールタイプをサポートするデータは、TrueとFalseの2つの値しかありませんが、ブールタイプには次のような演算があります.
1)と演算:両方のブール値がTrueの場合のみ、計算結果はTrueになります.
True and True   # ==> True
True and False   # ==> False
False and True   # ==> False
False and False   # ==> False
2)または演算:1つのブール値がTrueの場合、計算結果はTrueになります.
True or True   # ==> True
True or False   # ==> True
False or True   # ==> True
False or False   # ==> False
3)非演算:TrueをFalseにするか、FalseをTrueにする:
not True   # ==> False
not False   # ==> True
ブール演算はコンピュータで条件判断に用いられ,計算結果がTrueまたはFalseであることから,コンピュータは異なる後続コードを自動的に実行することができる.
Pythonでは、ブールタイプは他のデータ型とand、or、not演算を行うこともできます.たとえば、次のようにします.
a = True
print (a and 'a=T' or 'a=F')
Pythonは0、空の文字列''とNoneをFalseと見なし、他の数値と非空の文字列はTrueと見なしているからです.
true and x;結果はxを返し、xがtrueであればx and yはxを返す.
4)ショート演算:
1.a and bを計算するとき、aがFalseであれば、和アルゴリズムによれば、結果全体が必ずFalseであるため、aを返す.aがTrueである場合、計算結果全体は必ずbに依存するので、bを返す.
2.a or bを計算するとき、aがTrueであれば、あるいはアルゴリズムによって、計算結果全体が必ずTrueであるため、aを返す.aがFalseである場合、計算結果全体は必ずbに依存するので、bを返す.
だからPython解釈器はブール演算をする時、計算結果を事前に確定すれば、後で計算しないで、直接結果を返します.
例:
#-*- coding:utf-8 -*-
a = 'python'    #true
print ('hello,', a or 'world')#a true,      
b = ''  #false
print ('hello,', b or 'world')#b false,   'world'

4 Pythonのlist
4.1リストの作成
Pythonに内蔵されているデータ型の1つはリスト:listです.listは、エレメントをいつでも追加および削除できる秩序化された集合です.
例えば、クラスのすべての学生の名前をリストすると、リストで表すことができます.
['Michael', 'Bob', 'Tracy']
['Michael', 'Bob', 'Tracy']
listは数学的意味での秩序集合であり,すなわちlist中の要素は順番に配列されている.
リストを構築するのは非常に簡単で、上のコードに従って、リストのすべての要素を直接[]で囲んで、リストオブジェクトです.通常、listを変数に割り当てます.これにより、listを変数で参照できます.
#-*- coding:utf-8 -*-
a = ['dadaad','dadasdsa',123,'  ']
print (a)#['dadaad', 'dadasdsa', 123, '  ']

4.2 Pythonインデックスに従ってlistにアクセス
リストは秩序ある集合であるため、1つのリストで点数が高いから低いまでクラスの3人の同級生を表すことができますが、リストからN位の同級生を指定するにはどうすればいいのでしょうか.メソッドは、リスト内の指定された要素をインデックスで取得します.
特に、インデックスは0から始まり、すなわち、1番目の要素のインデックスは0であり、2番目の要素のインデックスは1であることに注意してください.そこで、最初の同級生の名前を印刷するには、L[0]:
#-*- coding:utf-8 -*-
L = ['adam', 95.5, 'lisa', 85, 'bart', 59]
print (L)#['adam', 95.5, 'lisa', 85, 'bart', 59]
print (L[0])#adam
print (L[1])#95.5

インデックス範囲外の場合は、print(L[6])とエラーが発生する
IndexError: list index out of range
4.3 Pythonの逆順アクセスリスト
私たちはやはりリストで点数が高いから低いまでクラスの3人の同級生を表しています.
L = ['Adam', 'Lisa', 'Bart']
この时、先生は、点数が一番低い学生を出してくださいと言いました.
コードを書いてこのタスクを完了するには、まずリストを数えて、3つの要素が含まれていることを発見することができます.そのため、最後の要素のインデックスは2です.
print (L[2])
Bart
もっと簡単な方法はありませんか?
あります!
Bartさんは最下位で、俗称は最下位です.だから、-1というインデックスで最後の要素を表すことができます.
print (L[-1])
Bart
Bartさんは銃を横にしていると言った.
同様に、最後から2番目は-2、最後から3番目は-3、最後から4番目は-4で表される.
print (L[-2])
Lisa
 print (L[-3])
Adam
 print (L[-4])
Traceback (most recent call last):
File "", line 1, in
IndexError: list index out of range
L[-4]が間違っています.最後から4番目に存在しないため、全部で3つの要素しかありません.
例:
#-*- coding:utf-8 -*-
L = L = [95.5, 85, 59]
print (L)
print (L[-1])
print (L[-2])
print (L[-3])
print (L[-4])
  print (L[-4])    
Traceback (most recent call last):
  File "D:\Java\workspace\Testpython\hello.py", line 7, in 
    print (L[-4])
IndexError: list index out of range
[95.5, 85, 59]
59
85
95.5

逆インデックスを使用する場合も、境界を越えないように注意してください.