Latest web development tutorials

Python3 tipe data dasar

variabel Python tidak perlu dideklarasikan. Setiap variabel harus ditetapkan sebelum digunakan, variabel tugas setelah variabel akan dibuat.

Dalam Python, variabel adalah variabel, itu bukan jenis yang kita sebut "jenis" adalah jenis variabel dalam arti obyek dalam memori.

Sama tanda (=) digunakan untuk memberikan nilai pada variabel.

Sama tanda (=) operator pada sebelah kiri adalah nama variabel, suatu tanda sama (=) operator pada sebelah kanan adalah nilai yang disimpan dalam variabel. Sebagai contoh:

#!/usr/bin/python3

counter = 100          # 整型变量
miles   = 1000.0       # 浮点型变量
name    = "w3big"     # 字符串

print (counter)
print (miles)
print (name)

Di atas Program akan menampilkan hasil sebagai berikut:

100
1000.0
w3big

Sebuah pluralitas tugas variabel

Python memungkinkan Anda untuk menetapkan beberapa variabel secara bersamaan. Sebagai contoh:

a = b = c = 1

Contoh di atas, membuat objek Integer, dan nilai 1, tiga variabel ditugaskan ke ruang memori yang sama.

Anda juga dapat menentukan beberapa variabel ke dalam beberapa objek. Sebagai contoh:

a, b, c = 1, 2, "w3big"

Contoh di atas, dua bilangan bulat alokasi objek 1 dan 2 untuk variabel a dan b, objek string "w3big" ditugaskan untuk variabel c.


tipe data standar

Python3 Ada enam tipe data standar:

  • Jumlah (digital)
  • String (String)
  • Daftar (daftar)
  • Tupel (tuple)
  • Set (koleksi)
  • Kamus (dictionary)

Jumlah (digital)

Python3 dukunganint, float, bool, kompleks (plural).

Di Python 3, hanya ada satu tipe integer int, dinyatakan sebagai integer panjang, tidak ada python2 Long.

Seperti kebanyakan bahasa, jenis tugas dan nilai-nilai dihitung sangat intuitif.

Built-in tipe () fungsi dapat digunakan untuk query jenis variabel objek disebut.

>>> a, b, c, d = 20, 5.5, True, 4+3j
>>> print(type(a), type(b), type(c), type(d))
<class 'int'> <class 'float'> <class 'bool'> <class 'complex'>

Catatan: python2 ada jenis Boolean, yang menggunakan angka 0 menunjukkan False, diwakili oleh 1 Benar.Untuk Python3 di Benar dan Salah didefinisikan sebagai kata kunci, tetapi nilai-nilai mereka dan 0 atau 1, dan mereka dapat menambahkan nomor.

Ketika Anda menentukan nilai, objek Nomor dibuat:

var1 = 1
var2 = 10

Anda juga dapat menggunakan del pernyataan untuk menghapus beberapa referensi objek.

sintaks pernyataan del adalah:

del var1[,var2[,var3[....,varN]]]]

Anda dapat menghapus objek tunggal atau ganda dengan menggunakan pernyataan del. Sebagai contoh:

del var
del var_a, var_b

operasi numerik

>>> 5 + 4  # 加法
9
>>> 4.3 - 2 # 减法
2.3
>>> 3 * 7  # 乘法
21
>>> 2 / 4  # 除法,得到一个浮点数
0.5
>>> 2 // 4 # 除法,得到一个整数
0
>>> 17 % 3 # 取余 
2
>>> 2 ** 5 # 乘方
32

Catatan:

  • 1, Python dapat menetapkan beberapa variabel, seperti a, b = 1, 2.
  • 2, variabel dapat ditugaskan untuk objek dari berbagai jenis.
  • 3, nilai divisi (/) selalu mengembalikan floating-point, integer Untuk penggunaan // operator.
  • 4, dalam komputasi hybrid, Python integer akan dikonversi menjadi angka floating-point.

Contoh jenis numerik

int mengapung kompleks
10 0.0 3.14j
100 15.20 45.j
-786 -21,9 9.322e-36j
080 32,3 + E18 .876j
-0490 -90. -.6545 + 0J
-0x260 -32.54e100 3e + 26j
0x69 70,2-E12 4.53e-7J

Python juga mendukung bilangan kompleks, bilangan kompleks dengan bagian real dan imajiner, Anda dapat menggunakan + bj, atau kompleks (a, b) bahwa bagian nyata dan bagian imajiner b adalah floating-point


String (String)

Python string dengan tanda kutip tunggal ( ') atau tanda kutip ganda ( ") tanda kutip, menggunakan backslash (\) untuk melarikan diri karakter khusus.

sintaks pencegatan string adalah sebagai berikut:

变量[头下标:尾下标]

nilai indeks sebagai nilai awal sampai 0, -1 untuk posisi awal di akhir.

Tanda plus (+) adalah string konektor, tanda bintang (*) menunjukkan salinan string saat ini, diikuti oleh jumlah ini jumlah replikasi. Contohnya adalah sebagai berikut:

#!/usr/bin/python3

str = 'w3big'

print (str)          # 输出字符串
print (str[0:-1])    # 输出第一个个到倒数第二个的所有字符
print (str[0])       # 输出字符串第一个字符
print (str[2:5])     # 输出从第三个开始到第五个的字符
print (str[2:])      # 输出从第三个开始的后的所有字符
print (str * 2)      # 输出字符串两次
print (str + "TEST") # 连接字符串

Di atas Program akan menampilkan hasil sebagai berikut:

w3big
Runoo
R
noo
noob
w3bigw3big
w3bigTEST

Python menggunakan backslash (\) melarikan diri karakter khusus, jika Anda tidak ingin terjadi backslash lolos, Anda dapat menambahkan r di depan representasi string dari string asli:

>>> print('Ru\noob')
Ru
oob
>>> print(r'Ru\noob')
Ru\noob
>>> 

Selain itu, backslash (\) sebagai karakter garis kelanjutan, yang menunjukkan bahwa baris berikutnya merupakan kelanjutan dari baris sebelumnya. Anda juga dapat menggunakan"" "..." "" atau '' '...' ''span beberapa baris.

Catatan, Python ada tipe karakter yang terpisah adalah string karakter panjang 1.

>>> word = 'Python'
>>> print(word[0], word[5])
P n
>>> print(word[-1], word[-6])
n P

Perbedaannya adalah bahwa dengan C string, Python string tidak dapat diubah. Indeks untuk tugas lokasi, seperti kata [0] = 'm' akan menyebabkan kesalahan.

Catatan:

  • 1, dapat digunakan untuk melarikan diri backslash, lolos backslash memungkinkan penggunaan r tidak terjadi.
  • 2, string + operator dapat digunakan bersama-sama dengan * mengulangi operator.
  • 3, Python tali dua metode pengindeksan, dari kiri ke kanan dimulai dengan 0, dari kanan ke kiri dimulai dengan -1.
  • 4, Python string yang tidak dapat diubah.

Daftar (daftar)

Daftar (daftar) adalah yang paling sering digunakan Python jenis data.

Anda dapat melengkapi struktur data daftar untuk mencapai sebagian besar kelas koleksi. Ketik elemen dalam daftar mungkin tidak sama, mendukung digital, tali bahkan dapat berisi daftar (disebut bersarang).

Daftar ini ditulis antara ([]) dalam kurung persegi, daftar dipisahkan koma elemen.

Dan string, daftar juga dapat diindeks dan intersepsi, intersepsi kembali setelah daftar adalah daftar baru yang berisi unsur yang dibutuhkan.

Daftar dicegat sintaks adalah sebagai berikut:

变量[头下标:尾下标]

nilai indeks sebagai nilai awal sampai 0, -1 untuk posisi awal di akhir.

Tanda plus (+) adalah daftar rangkaian operator, tanda bintang (*) diulang operasi. Contoh berikut:

#!/usr/bin/python3

list = [ 'abcd', 786 , 2.23, 'w3big', 70.2 ]
tinylist = [123, 'w3big']

print (list)            # 输出完整列表
print (list[0])         # 输出列表第一个元素
print (list[1:3])       # 从第二个开始输出到第三个元素
print (list[2:])        # 输出从第三个元素开始的所有元素
print (tinylist * 2)    # 输出两次列表
print (list + tinylist) # 连接列表

Contoh output di atas:

['abcd', 786, 2.23, 'w3big', 70.2]
abcd
[786, 2.23]
[2.23, 'w3big', 70.2]
[123, 'w3big', 123, 'w3big']
['abcd', 786, 2.23, 'w3big', 70.2, 123, 'w3big']

Dan Python string tidak sama, unsur-unsur dari daftar dapat diubah:

>>> a = [1, 2, 3, 4, 5, 6]
>>> a[0] = 9
>>> a[2:5] = [13, 14, 15]
>>> a
[9, 2, 13, 14, 15, 6]
>>> a[2:5] = []   # 删除
>>> a
[9, 2, 6]

Daftar dibangun ada banyak cara, seperti append (), pop (), dll, yang akan disebutkan kemudian.

Catatan:

  • 1, Daftar ditulis dalam kurung, dipisahkan dengan elemen koma.
  • 2, dan string yang sama, daftar dapat diindeks dan iris.
  • 3, Daftar Anda dapat menggunakan operator splicing +.
  • 4, Daftar unsur dapat diubah.

Tupel (tuple)

Tupel (tuple) mirip dengan daftar, kecuali bahwa tuple tidak dapat diubah. Tupel ditulis dalam tanda kurung(()), unsur-unsur dipisahkan dengan koma.

Tupel jenis elemen mungkin tidak sama:

#!/usr/bin/python3

tuple = ( 'abcd', 786 , 2.23, 'w3big', 70.2  )
tinytuple = (123, 'w3big')

print (tuple)             # 输出完整元组
print (tuple[0])          # 输出元组的第一个元素
print (tuple[1:3])        # 输出从第二个元素开始到第三个元素
print (tuple[2:])         # 输出从第三个元素开始的所有元素
print (tinytuple * 2)     # 输出两次元组
print (tuple + tinytuple) # 连接元组

Contoh output di atas:

('abcd', 786, 2.23, 'w3big', 70.2)
abcd
(786, 2.23)
(2.23, 'w3big', 70.2)
(123, 'w3big', 123, 'w3big')
('abcd', 786, 2.23, 'w3big', 70.2, 123, 'w3big')

Tuple mirip dengan string, dapat diindeks dan indeks subscript dimulai pada 0, -1 untuk lokasi dari ujung awal. Hal ini juga dapat dicegat (lihat di atas, tidak ada penjelasan lebih lanjut).

Bahkan, Anda dapat menempatkan string sebagai tupel khusus.

>>> tup = (1, 2, 3, 4, 5, 6)
>>> print(tup[0])
1
>>> print(tup[1:5]])
(2, 3, 4, 5)
>>> tup[0] = 11  # 修改元组元素的操作是非法的
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: 'tuple' object does not support item assignment
>>> 

Meskipun elemen tupel tidak dapat diubah, tetapi dapat berisi objek variabel, seperti daftar daftar.

Struktur berisi 0 atau 1 elemen tuple khusus, sehingga ada beberapa aturan sintaks tambahan:

tup1 = ()    # 空元组
tup2 = (20,) # 一个元素,需要在元素后添加逗号

string, daftar dan tupel milik urutan (sequence).

Catatan:

  • 1, dengan string yang sama, tuple tidak dapat diubah.
  • 2, tupel juga dapat diindeks dan diiris cara yang sama.
  • 3, memperhatikan struktur khusus dari aturan tata bahasa tupel mengandung 0 atau 1 elemen.
  • 4, tupel juga dapat menggunakan splicing operator +.

Set (koleksi)

Set (set) adalah gangguan elemen unik dari urutan.

Fungsi dasarnya adalah untuk membawa pengujian keanggotaan dan menghapus duplikat elemen.

Anda dapat menggunakan kurung kurawal ({}) atau set () fungsi untuk membuat koleksi Catatan: Menciptakan himpunan kosong harus diatur () bukan {}, {karena} digunakan untuk membuat kamus kosong.

#!/usr/bin/python3

student = {'Tom', 'Jim', 'Mary', 'Tom', 'Jack', 'Rose'}

print(student)   # 输出集合,重复的元素被自动去掉

# 成员测试
if('Rose' in student) :
    print('Rose 在集合中')
else :
	print('Rose 不在集合中')


# set可以进行集合运算
a = set('abracadabra')
b = set('alacazam')

print(a)

print(a - b)     # a和b的差集

print(a | b)     # a和b的并集

print(a & b)     # a和b的交集

print(a ^ b)     # a和b中不同时存在的元素

Contoh output di atas:

{'Jack', 'Rose', 'Mary', 'Jim', 'Tom'}
Rose 在集合中
{'r', 'b', 'a', 'c', 'd'}
{'r', 'b', 'd'}
{'a', 'l', 'z', 'b', 'm', 'd', 'r', 'c'}
{'a', 'c'}
{'l', 'z', 'b', 'm', 'd', 'r'}

Kamus (dictionary) (kamus)

Kamus (dictionary) Python lain yang sangat berguna built-in tipe data.

Daftar ini disusun objek mengikat, kamus adalah koleksi unordered benda. Perbedaan antara keduanya adalah: antara unsur-unsur dari kamus diakses oleh kunci, daripada melalui akses offset.

Ini adalah jenis pemetaan kamus, kamus dengan "{}" logo, yang merupakankunci unordered (key): nilai (value)pasangan.

Key (kunci) harus berubah.

Dalam kamus yang sama, kunci (key) harus unik.

#!/usr/bin/python3

dict = {}
dict['one'] = "1 - 本教程"
dict[2]     = "2 - 本工具"

tinydict = {'name': 'w3big','code':1, 'site': 'www.w3big.com'}


print (dict['one'])       # 输出键为 'one' 的值
print (dict[2])           # 输出键为 2 的值
print (tinydict)          # 输出完整的字典
print (tinydict.keys())   # 输出所有键
print (tinydict.values()) # 输出所有值

Contoh output di atas:

1 - 本教程
2 - 本工具
{'name': 'w3big', 'site': 'www.w3big.com', 'code': 1}
dict_keys(['name', 'site', 'code'])
dict_values(['w3big', 'www.w3big.com', 1])

Konstruktor dict () dapat membangun urutan kunci langsung dari kamus sebagai berikut:

>>> dict([('w3big', 1), ('Google', 2), ('Taobao', 3)])
{'Taobao': 3, 'w3big': 1, 'Google': 2}

>>> {x: x**2 for x in (2, 4, 6)}
{2: 4, 4: 16, 6: 36}

>>> dict(w3big=1, Google=2, Taobao=3)
{'Taobao': 3, 'w3big': 1, 'Google': 2}

Selain itu, ada beberapa jenis kamus built-in fungsi, seperti yang jelas (), kunci (), nilai () dan sebagainya.

Catatan:

  • 1, adalah jenis pemetaan kamus, yang unsur-unsurnya adalah pasangan.
  • 2, kamus kata kunci harus berubah dan tidak dapat diulang.
  • 3. Buat kamus kosong menggunakan{}.

Python tipe data konversi

Kadang-kadang, kita perlu built-in konversi tipe data, tipe data konversi, Anda hanya perlu mengetikkan data sebagai nama fungsi.

Beberapa built-in fungsi dapat melakukan konversi antara tipe data. Fungsi-fungsi ini mengembalikan objek baru yang mewakili nilai yang dikonversi.

fungsi deskripsi

int (x [, basis])

Mengkonversi x ke integer

mengambang (x)

Transisi ke angka floating-point x

kompleks (real [, Imag])

Buat kompleks

str (x)

objek dikonversi ke string x

cetak ulang (x)

Objek x diubah menjadi ekspresi string

eval (str)

Ini digunakan untuk menghitung string yang ekspresi Python valid dan mengembalikan sebuah objek

tuple (s)

Urutan s ke tupel

daftar (s)

Urutan s dikonversi ke daftar

set (s)

Dikonversi ke variabel set

dict (d)

Buat sebuah kamus. d harus urutan (key, value) tupel.

frozenset (s)

Dikonversi ke koleksi abadi

chr (x)

Akan mengkonversi sebuah integer untuk karakter

unichr (x)

Integer dikonversi menjadi karakter Unicode

ord (x)

Mengkonversi karakter ke nilai integer yang

hex (x)

Integer dikonversi ke string heksadesimal

Oktober (x)

Integer dikonversi ke string oktal