Pythonの基本的なデータ型と基本的な操作
記事ディレクトリ
1.注意事項
1行のコメント:
Pythonの1行コメントは、たとえば次の#
ように始まります。
# 这是一个注释
複数行のコメント:
Pythonの複数行のコメントは、3つの一重引用符'''
または3つの二重引用符"""
で囲まれています。次に例を示します。
'''
这是多行注释,用三个单引号
这是多行注释,用三个单引号
这是多行注释,用三个单引号
'''
"""
这是多行注释,用三个双引号
这是多行注释,用三个双引号
这是多行注释,用三个双引号
"""
2.基本的なデータ型
要約:
- Pythonで変数を作成する場合、最初に変数の型を定義する必要はありません。
- 変数のデータ型を表示するには、関数を使用します
type(x)
- さまざまなタイプの要素をリスト、タプル、およびセットに格納できます
- Pyhton3には長整数型はなく、複合型が追加されています
complex
- 形式
z = a + bj
の複素数と呼ばれます。ここで、aは実数部、bは虚数部、jは虚数単位です。 - 実数の使用関数
x.real
を取得し、虚数の使用関数x.imag
を取得し、対応する共役複素数の使用関数を取得しますx.conjugate()
- 形式
例:
# 整数
a = 10
print(type(a)) # <class 'int'>
# 浮点数
b = 3.18
print(type(b)) # <class 'float'>
# 字符串
c = "gaoqize"
print(type(c)) # <class 'str'>
# 列表
# 可以同时包含不同的类型
d = ["1", 2.3, 3]
print(type(d)) # <class 'list'>
# 元组
e = ("python", 12, 2.3)
print(type(e)) # <class 'tuple'>
# 字典
f = {
"key1":"v1", "key2":"v2"}
print(type(f)) # <class 'dict'>
# 集合
g = {
"python", 12, 2.3}
print(type(g)) # <class 'set'>
# 布尔型
h = True
print(type(h)) # <class 'bool'>
# 复数
i = 1 + 2j
j = 2 + 5j
print(type(i)) # <class 'complex'>
print(i + j) # (3+7j)
print(i - j) # (-1-3j)
print(i * j) # (-8+9j)
print(i.real) # 1.0
print(i.imag) # 2.0
print(i.conjugate()) # (1-2j)
3つの異なるタイプの変換
タイプ(変数)は、変数を対応するタイプに変換します。
文字列から整数への変換
a = 10
var1 = str(a) # 整数转换成字符串
var2 = int(var1) # 字符串转换成整数
print(type(var1)) # <class 'str'>
print(type(var2)) # <class 'int'>
print(var1) # 10
print(var2) # 10
整数と浮動小数点の変換
a = 3.18
var1 = int(a) # 浮点数转换成整数
var2 = float(var1) # 整数转换成浮点数
print(type(var1)) # <class 'int'>
print(type(var2)) # <class 'float'>
print(var1) # 3
print(var2) # 3.0
知らせ:
-
浮動小数点数の整数への変換は、小数点を削除することによって行われます。
-
この
round()
関数次のように、対応する小数点以下の桁数に丸めます。var1 = round(2.366, 2) # 对2.366采用四舍五入的方式保留2位小数 print(var1) # 2.37
リストとタプルの変換
d = ["1", 2.3, 3]
var1 = tuple(d) # 列表转换成元组
var2 = list(var1) # 元组转换成列表
print(type(var1)) # <class 'tuple'>
print(type(var2)) # <class 'list'>
print(var1) # ('1', 2.3, 3)
print(var2) # ['1', 2.3, 3]
ネストされたタプルを辞書に変換する
e = (("name", "gaoqize"), ("sex", "man")) # 嵌套元组,如果要转换成字典,被嵌套元组只能含有2个元素
var1 = dict(e) # 嵌套元组转换成字典
print(type(e)) # <class 'tuple'>
print(type(var1)) # <class 'dict'>
print(e) # (('name', 'gaoqize'), ('sex', 'man'))
print(var1) # {'name': 'gaoqize', 'sex': 'man'}
異なる塩基を相互に変換する
例:
xは文字列型である必要があります
他のベースをベース10以外のベースに変換する場合は、最初にそれらをベース10に変換する必要があります。
int("x", 2)
バイナリxを対応する10進数に変換します
bin(int("x", 8))
8進数のxを対応する2進数に変換します
print(int("1000", 2)) # 8print(bin(int("8", 10))) # 0b1000
第四に、文字列の操作
Pythonの文字列は、一重引用符、二重引用符、および三重引用符をサポートします(複数行の文字列がサポートされます)(Javaは二重引用符のみをサポートします)
文字列を定義する
var1 = 'str1'
var2 = "str2"
var3 = '''line1
line2'''
print(var1, var2, var3)
'''
str1 str2 line1
line2
'''
文字列を連結する
スプライシングには「+」記号を使用します
var1 = 'str1'
var2 = "str2"
print(var1 + var2) # str1str2
複数の文字列をコピーする
文字列*回
var1 = 'str1' * 10
print(var1) # str1str1str1str1str1str1str1str1str1str1
分割文字列
- デフォルトでは、スペースは分割されます(複数のスペースは1つのスペースとして分割されます)
- 分割する文字をパラメータで指定します
var2 = "str1 str2 str3 str4str5"
print(var2.split()) # ['str1', 'str2', 'str3', 'str4str5']
print(var2.split(' ')) # ['str1', 'str2', '', 'str3', '', '', 'str4str5']
var3 = "str1:str2:str3:str4"
print(var3.split(':')) # ['str1', 'str2', 'str3', 'str4']
文字列を置き換える置換
var4 = "I love Python"
print(var4.replace("Python", "Java")) # I love Java
print(var4) # I love Python,也就是说原字符串并没有发生改变
文字列の大文字小文字の変換
var5 = "GAOQIZE"
print(var5.upper()) # GAOQIZE
print(var5.lower()) # gaoqize
print(var5.capitalize()) # Gaoqize,让首字母大写,其余字母小写
リストを文字列に変換する
このjoin
関数、リストを文字列に変換する操作を完了します。リスト内の要素が相互に接続されている文字に注意してください。
var6 = ["I", "love", "u"]
# 列表中的元素通过","进行拼接
print(",".join(var6)) # I,love,u
五、リストの操作
- リストを連結し、複数のリストをコピーする特定の操作は、文字列と同じです。
- リストは、次のようにネストすることもできます
list1 = ["hello", 12, 12.8, ["hi", 22]]
インデックスによるリスト要素へのアクセス
配列と同様に、対応する要素にはインデックスを使用して直接アクセスできます。
インデックス位置への前後のアクセスは0から始まり、インデックス位置への前後のアクセスは-1から始まります。
list1 = ["hello", 12, 12.8, ["hi", 22]]
print(list1[0]) # hello
print(list1[-1]) # ['hi', 22]
シャーディングによるリスト要素へのアクセス
インデックスの位置はフォーマットを使用[x:y]
します。左側が閉じて右側が開いていることに注意してください。
[x:]
x位置(xを含む)の後のすべての要素を[:y]
表し、y位置(yを除く)の前のすべての要素を表します。
list1 = ["hello", 12, 12.8, ["hi", 22]]
print(list1[0:2]) # ['hello', 12]
print(list1[-3:-1]) # [12, 12.8]
print(list1[0:]) # ['hello', 12, 12.8, ['hi', 22]]
print(list1[:3]) # ['hello', 12, 12.8]
等しいステップでリスト要素にアクセスする
[::x]
手段を使用して、最初に最初の要素にアクセスし、次にステップxで次の要素にアクセスします。
list1 = ["hello", 12, 12.8, ["hi", 22]]
print(list1[::3]) # ['hello', ['hi', 22]]
print(list1[::1]) # ['hello', 12, 12.8, ['hi', 22]]
print(list1[::2]) # ['hello', 12.8]
リスト要素を追加
append()
リストの最後に単一の要素を追加するために使用します。
list1 = ["hello"]
list1.append("你好")
print(list1) # ['hello', '你好']
extend()
リストの最後にリストを追加するために使用します。
list1 = ["hello", 12, 12.8]
list2 = ["more"]
list1.extend(list2)
print(list1) # ['hello', 12, 12.8, 'more']
注:[append()
要素の追加]を使用すると新しいリストが作成され、 extend()
[要素の追加]を使用すると元のリストに基づいて追加されます。
insert()
リストの指定した位置に要素を追加するために使用します。
list1 = ["hello", 12, 12.8]
list1.insert(0, "first") # 在0位置插入一个元素
print(list1) # ['first', 'hello', 12, 12.8]
リストから要素を削除します
del list[x]
インデックス位置xの要素を削除するために使用します。
list1 = ["hello", 12, 12.8]
del list1[0]
print(list1) # [12, 12.8]
リストの最後の要素をpop()
ポップます。
list1 = ["hello", 12, 12.8]
print(list1.pop()) # 12.8
リスト内の要素の出現数をカウントします
count()
要素の出現回数を取得するために使用します。
list1 = ["hello", 12, 12.8, 12]
print(list1.count(12)) # 2
6.タプルの操作
タプルとリストの最大の違いは、タプルが作成されると、その中の要素を変更できないことです。変更が発生すると、新しいタプルが作成されます。
残りの操作はリストとほとんど同じです。
セブン、辞書の操作
複数の辞書をマージする
ディクショナリのマージまたは更新をupdate
完了ます。同じキーが更新され、異なるキーがマージされます。
dict1 = {
"k1":"v1", "k2":"v2"}
dict2 = {
"k1":"update_k1", "k3":"v3"}
dict1.update(dict2)
print(dict1) # {'k1': 'update_k1', 'k2': 'v2', 'k3': 'v3'}
キーで対応する値を取得します
辞書名["key"]を使用して、辞書内の対応するキーの値を取得します。
dict1 = {
"k1":"v1", "k2":"v2"}
print(dict1["k1"]) # v1
新しいキーと値のペアを追加します
dictionaryname ["key"] = "value"を使用して、このディクショナリに新しいキーと値のペアを追加します。(キーがすでに存在する場合は、キーの値を更新します)
dict1 = {
"k1":"v1", "k2":"v2"}
dict1["k3"] = "v3"
print(dict1) # {'k1': 'v1', 'k2': 'v2', 'k3': 'v3'}
八、セットの操作
コレクション内の要素は再現できません。
空のコレクションを作成します。
var1 = {
} # 一对大括号创建一个空的字典
var2 = set() # 固定格式创建空的集合
print(type(var1)) # <class 'dict'>
print(type(var2)) # <class 'set'>
連合
var1 = {
"gao", 12, 3.16}
var2 = {
"new", "gao"}
print(var1.union(var2)) # {3.16, 'new', 'gao', 12}
# 会自动去掉重复的元素
交差点
var1 = {
"gao", 12, 3.16}
var2 = {
"new", "gao"}
print(var1.intersection(var2)) # {'gao'}
差集
var1 = {
"gao", 12, 3.16}
var2 = {
"new", "gao"}
print(var1.difference(var2)) # {3.16, 12}
サブセットですか
var1 = {
"gao", 12, 3.16}
var2 = {
"gao"}
print(var2.issubset(var1)) # True
9つの基本的な演算子
整数と浮動小数点数に対して演算を実行すると、結果は浮動小数点数になります。