Pythonの基本的なデータ型と基本的な操作

Pythonの基本的なデータ型と基本的な操作

1.注意事項

1行のコメント:

Pythonの1行コメントは、たとえば次の#ように始まります。

# 这是一个注释

複数行のコメント:

Pythonの複数行のコメントは、3つの一重引用符'''または3つの二重引用符"""で囲まれています。次に例を示します。

'''
这是多行注释,用三个单引号
这是多行注释,用三个单引号 
这是多行注释,用三个单引号
'''

"""
这是多行注释,用三个双引号
这是多行注释,用三个双引号 
这是多行注释,用三个双引号
"""

2.基本的なデータ型

要約:

画像-20210920103240035
  • 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

知らせ:

  1. 浮動小数点数の整数への変換は、小数点を削除することによって行われます。

  2. この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'}

異なる塩基を相互に変換する

画像-20210920154255846

例:

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つの基本的な演算子

画像-20210922224951285

整数と浮動小数点数に対して演算を実行すると、結果は浮動小数点数になります。

画像-20210922225257397 画像-20210922225330040

おすすめ

転載: blog.csdn.net/weixin_49343190/article/details/120629894