Latest web development tutorials

งูหลามชนิดตัวแปร

ค่าตัวแปรที่เก็บไว้ในหน่วยความจำ ซึ่งหมายความว่าจะเปิดพื้นที่ในหน่วยความจำเมื่อคุณสร้างตัวแปร

ขึ้นอยู่กับชนิดข้อมูลของตัวแปรล่ามจะจัดสรรหน่วยความจำที่ระบุและตัดสินใจเลือกสิ่งที่ข้อมูลจะถูกเก็บไว้ในหน่วยความจำ

ดังนั้นตัวแปรที่สามารถระบุชนิดข้อมูลที่แตกต่างกันตัวแปรเหล่านี้สามารถจัดเก็บจำนวนเต็มทศนิยมหรือตัวอักษร



การกำหนดตัวแปร

ตัวแปรงูใหญ่ไม่จำเป็นต้องพิมพ์คำสั่งที่ได้รับมอบหมาย

ตัวแปรแต่ละครั้งจะถูกสร้างขึ้นในหน่วยความจำรวมทั้งโลโก้ชื่อและข้อมูลของข้อมูลต่างๆ

ตัวแปรแต่ละคนจะต้องได้รับมอบหมายก่อนการใช้งาน, การกำหนดตัวแปรหลังจากตัวแปรจะถูกสร้างขึ้น

เครื่องหมายเท่ากับ (=) จะใช้ในการกำหนดค่าตัวแปร

เครื่องหมายเท่ากับ (=) ผู้ประกอบการทางด้านซ้ายเป็นชื่อตัวแปรเป็นผู้ดำเนินการเครื่องหมายเท่ากับ (=) ด้านขวาเป็นค่าที่เก็บไว้ในตัวแปร ตัวอย่างเช่น:

#!/usr/bin/python
# -*- coding: UTF-8 -*-

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

print counter
print miles
print name

เล่นอินสแตนซ์ >>

ตัวอย่างข้างต้น 100,1000.0 และ "จอห์น" ได้รับมอบหมายให้เคาน์เตอร์ไมล์ตัวแปรชื่อ

ดังกล่าวข้างต้นโปรแกรมออกจะผลต่อไปนี้:

100
1000.0
John


ส่วนใหญ่ของการกำหนดตัวแปร

งูหลามช่วยให้คุณสามารถกำหนดตัวแปรหลายคนพร้อมกัน ตัวอย่างเช่น:

A = B = C = 1

ตัวอย่างข้างต้นสร้างวัตถุจำนวนเต็มและค่า 1 สามตัวแปรได้รับมอบหมายให้พื้นที่หน่วยความจำเดียวกัน

นอกจากนี้คุณยังสามารถระบุตัวแปรหลายวัตถุหลาย ตัวอย่างเช่น:

A, B, C = 1, 2, "จอห์น"

ตัวอย่างข้างต้นสองจำนวนเต็มวัตถุที่ 1 และ 2 ถูกกำหนดให้กับตัวแปรและ B สตริงวัตถุ "จอห์น" ถูกกำหนดให้กับตัวแปร C



ชนิดข้อมูลมาตรฐาน

ข้อมูลที่เก็บไว้อาจจะเป็นความหลากหลายของประเภทในหน่วยความจำ

ยกตัวอย่างเช่น person.s อายุเป็นค่าเก็บไว้ในที่อยู่ของเขาหรือเธอจะถูกเก็บไว้ในตัวอักษรและตัวเลข

งูหลามมีมาตรฐานบางอย่างที่ใช้ในการกำหนดประเภทของการดำเนินงานและพวกเขาอาจจะสำหรับแต่ละของพวกเขาวิธีการจัดเก็บข้อมูล

งูหลามมีห้าชนิดข้อมูลมาตรฐาน:

  • ตัวเลข (Digital)
  • สตริง (String)
  • รายการ (รายการ)
  • tuple (tuple)
  • พจนานุกรม (Dictionary)


ตัวเลขหลาม

ชนิดข้อมูลที่เป็นตัวเลขที่ใช้ในการจัดเก็บค่า

พวกเขาเป็นชนิดข้อมูลที่ไม่เปลี่ยนรูปซึ่งหมายถึงการเปลี่ยนชนิดข้อมูลที่เป็นตัวเลขจะได้รับมอบหมายวัตถุใหม่

เมื่อคุณระบุค่าวัตถุจำนวนจะถูกสร้างขึ้น:

var1 = 1
var2 = 10

นอกจากนี้คุณยังสามารถใช้คำสั่ง DEL เพื่อลบวัตถุบางอย่าง

ไวยากรณ์คำสั่ง Del คือ:

เดล var1 [var2 [var3 [ .... Varn]]]]

คุณสามารถดูได้โดยใช้คำสั่ง DEL เพื่อลบวัตถุเดียวหรือหลาย ตัวอย่างเช่น:

เดวา
เดล var_a, var_b

งูหลามสนับสนุนสี่ประเภทที่แตกต่างกันของตัวเลข:

  • int (ลงนามจำนวนเต็ม)
  • ยาว (จำนวนเต็มยาว [ยังสามารถเป็นตัวแทนของฐานแปดและเลขฐานสิบหก])
  • ลอย (float)
  • คอมเพล็กซ์ (ซับซ้อน)
ตัวอย่าง

ตัวอย่างบางส่วนของชนิดของตัวเลข:

int ยาว ลอย ซับซ้อน
10 51924361L 0.0 3.14j
100 -0x19323L 15.20 45.j
-786 0122L -21.9 9.322e-36j
080 0xDEFABCECBDAECBFBAEl 32.3 + E18 .876j
-0490 535633629843L -90 -.6545 + 0J
-0x260 -052318172735L -32.54e100 3E + 26J
0x69 -4721885298529L 70.2-E12 4.53e-7J
  • นอกจากนี้คุณยังสามารถใช้เป็นจำนวนเต็มยาวเป็นตัวพิมพ์เล็ก "L" แต่ก็ขอแนะนำให้คุณใช้ตัวพิมพ์ใหญ่ "L" เพื่อหลีกเลี่ยงหมายเลข "1" ความสับสน งูหลามใช้ "L" เพื่อแสดงจำนวนเต็มยาว
  • งูใหญ่ยังสนับสนุนตัวเลขที่ซับซ้อนตัวเลขที่ซับซ้อนโดยส่วนจริงคุณสามารถใช้ A + BJ หรือซับซ้อน (A, B) ว่าส่วนจริงและจินตนาการส่วน B เป็นจุดลอย


สตริงหลาม

สตริงหรือสตริง (String) เป็นสายอักขระประกอบด้วยตัวเลขตัวอักษรขีดดังกล่าว

มักจะเรียกว่า:

s = "a1a2 ···เป็น" (n> = 0)

มันเป็นภาษาโปรแกรมที่บ่งชี้ชนิดข้อมูลของข้อความ

รายการสตริงหลามสองชนิดของค่าในการสั่งซื้อ:

  • จากซ้ายไปขวาค่าเริ่มต้นของดัชนีศูนย์ช่วงสูงสุดคือสตริงน้อยความยาว 1
  • จากขวาไปซ้ายเริ่มต้นที่เริ่มต้น -1 ดัชนีช่วงสูงสุดคือจุดเริ่มต้นของสตริง

ถ้าคุณต้องการที่จะได้รับบางย่อยจริงคุณสามารถใช้ตัวแปร [ภายใต้ส่วนหัว: ห้อยล่าสุด] คุณสามารถตัดสตริงที่สอดคล้องกันที่ห้อย 0 จะวัดจากจุดเริ่มต้นซึ่งสามารถเป็นบวกหรือลบภายใต้ มาร์คสามารถหมายถึงที่ว่างเปล่าที่จะใช้หัวหรือหาง

ตัวอย่างเช่น:

s = 'ilovepython'

s [1: 5] เป็นผลมาจากความรัก

เมื่อใช้สตริงลำไส้ใหญ่แยกหลามส่งกลับวัตถุใหม่ที่มีผลในการสั่งซื้อเพื่อชดเชยเนื้อหาของประชาชนอย่างต่อเนื่องนี้เริ่มต้นที่ด้านซ้ายจะรวมอยู่ภายใต้ชายแดน

ผลดังกล่าวรวม s [1] ค่าของ L, ช่วงสูงสุดจะไม่ถูกนำไปรวมถึงชายแดนเป็น s [5] ค่าของ p

เครื่องหมายบวก (+) เป็นผู้ประกอบการสตริง, เครื่องหมายดอกจัน (*) คือการดำเนินการซ้ำแล้วซ้ำอีก ตัวอย่างต่อไปนี้:

#! / usr / bin / หลาม
# - * - การเข้ารหัส: UTF-8 - * -

STR = 'Hello World!'

พิมพ์ STR # เอาท์พุททั้งสตริง
พิมพ์ STR [0] # สตริงการส่งออกของตัวอักษรตัวแรก
สตริงเอาท์พุท # สายที่สามห้าระหว่าง: STR พิมพ์ [5 2]
พิมพ์ STR [2:] # ผลลัพธ์จากจุดเริ่มต้นของสายอักขระที่สาม
พิมพ์ STR * 2 # สองสตริงเอาท์พุท
พิมพ์ STR + "ทดสอบ" สตริงการเชื่อมต่อ # เอาท์พุท

ตัวอย่างของการส่งออกดังกล่าวข้างต้น:

สวัสดีชาวโลก!
H
llo
llo โลก!
Hello World Hello World!
สวัสดีชาวโลก! TEST


รายการหลาม

รายการ (รายการ) เป็นที่ใช้บ่อยที่สุดหลามชนิดข้อมูล

คุณสามารถดำเนินการโครงสร้างข้อมูลรายชื่อเพื่อให้บรรลุที่สุดของชั้นคอลเลกชัน มันสนับสนุนตัวอักษร, ตัวเลข, สตริงและยังมีรายการ (ที่เรียกว่าการทำรัง)

รายการที่มีโลโก้ [] งูหลามเป็นชนิดที่พบบ่อยที่สุดของข้อมูลที่ซับซ้อน ดูรหัสที่จะเข้าใจ

รายการแบ่งส่วนสมควรที่จะถูกนำมาใช้ในตัวแปร [ภายใต้ส่วนหัว: ห้อยล่าสุด] คุณสามารถตัดรายการที่เหมาะสมจากซ้ายไปขวาโดยดัชนีเริ่มต้นของ 0, ดัชนีเริ่มต้นจากขวาไปซ้ายเริ่มต้นที่ -1 ห้อยอาจ หมายถึงว่างเปล่าที่จะใช้หัวหรือหาง

เครื่องหมายบวก (+) คือรายการของผู้ประกอบการเรียงต่อกันที่เป็นเครื่องหมายดอกจัน (*) จะถูกทำซ้ำการดำเนินงาน ตัวอย่างต่อไปนี้:

#! / usr / bin / หลาม
# - * - การเข้ารหัส: UTF-8 - * -

รายการ = [ 'ABCD', 786, 2.23, 'จอห์น', 70.2]
tinylist = [123 'จอห์น']

รายการที่สมบูรณ์ของการส่งออกพิมพ์รายการ #
พิมพ์รายการ [0] # องค์ประกอบแรกของการส่งออกรายการ
พิมพ์รายการ [1: 3] # การส่งออกของสององค์ประกอบที่สาม
พิมพ์รายการ [2:] # ผลผลิตองค์ประกอบทั้งหมดจากจุดเริ่มต้นถึงจุดสิ้นสุดของรายการที่สาม
พิมพ์ tinylist * 2 # รายการที่ส่งออกเป็นครั้งที่สอง
พิมพ์รายการ + รายการผลงาน # พิมพ์ tinylist

ตัวอย่างของการส่งออกดังกล่าวข้างต้น:

[ 'Abcd', 786, 2.23, 'จอห์น', 70.2]
ABCD
[786 2.23]
[2.23 'จอห์น', 70.2]
[123 'จอห์น' 123 'จอห์น']
[ 'Abcd', 786, 2.23, 'จอห์น', 70.2, 123, 'จอห์น']


tuple หลาม

tuple เป็นอีกหนึ่งชนิดข้อมูลคล้ายกับรายการ (รายการ)

tuple ด้วย "()" โลโก้ องค์ประกอบภายในคั่นด้วยเครื่องหมายจุลภาค รายการ แต่ไม่ได้รับมอบหมาย tuple สองเทียบเท่ากับการอ่านอย่างเดียว

#! / usr / bin / หลาม
# - * - การเข้ารหัส: UTF-8 - * -

tuple = ( 'ABCD', 786, 2.23, 'จอห์น', 70.2)
tinytuple = (123, 'จอห์น')

พิมพ์ tuple # ผลผลิต tuple สมบูรณ์
พิมพ์ tuple [0] # องค์ประกอบแรกของ tuple เอาท์พุท
พิมพ์ tuple [1: 3] # การส่งออกของสองไปยังองค์ประกอบที่สาม
tuple พิมพ์ [2:] # ผลผลิตองค์ประกอบทั้งหมดจากจุดเริ่มต้นถึงจุดสิ้นสุดของรายการที่สาม
พิมพ์ tinytuple * 2 # tuple การส่งออกครั้งที่สอง
พิมพ์ tuple + tinytuple # รวมกัน tuple ของการพิมพ์

ตัวอย่างของการส่งออกดังกล่าวข้างต้น:

( 'Abcd', 786, 2.23, 'จอห์น', 70.2)
ABCD
(786, 2.23)
(2.23 'จอห์น', 70.2)
(123, 'จอห์น' 123 'จอห์น')
( 'Abcd', 786, 2.23, 'จอห์น', 70.2, 123, 'จอห์น')

ต่อไปนี้เป็นอันดับที่ไม่ถูกต้องเพราะ tuples ไม่ได้รับอนุญาตในการปรับปรุง รายการที่มีการปรับปรุงเพื่ออนุญาตให้:

#! / usr / bin / หลาม
# - * - การเข้ารหัส: UTF-8 - * -

tuple = ( 'ABCD', 786, 2.23, 'จอห์น', 70.2)
รายการ = [ 'ABCD', 786, 2.23, 'จอห์น', 70.2]
tuple [2] = 1000 # tuple เป็นโปรแกรมที่ผิดกฎหมาย
รายการ [2] = 1000 # รายการคือการใช้งานที่ถูกต้องตามกฎหมาย


งูหลามพจนานุกรมองค์ประกอบ

พจนานุกรม (Dictionary) คือนอกจากจะหลามกว่าในรายการของชนิดของความยืดหยุ่นมากที่สุดในตัวโครงสร้างข้อมูล รายการจะมีคำสั่งให้มีผลผูกพันวัตถุพจนานุกรมคอลเลกชันเรียงลำดับของวัตถุ

ความแตกต่างระหว่างสองคือ: ในบรรดาองค์ประกอบของพจนานุกรมมีการเข้าถึงโดยที่สำคัญมากกว่าการผ่านเข้าถึงชดเชย

การใช้พจนานุกรม "{}" โลโก้ พจนานุกรมโดยดัชนี (กุญแจ) และส่วนประกอบของค่าที่สอดคล้องกัน

#! / usr / bin / หลาม
# - * - การเข้ารหัส: UTF-8 - * -

Dict = {}
Dict [ 'หนึ่ง'] = "นี่คือหนึ่ง"
Dict [2] = "นี่คือสอง"

tinydict = { 'ชื่อ': 'จอห์น', 'รหัส' 6734 ',' ลึก ':' ขาย '}


พิมพ์ Dict [ 'หนึ่ง'] Key # ผลผลิตคุ้มค่า 'หนึ่ง'
พิมพ์ Dict [2] มูลค่าการส่งออกที่สำคัญของ # 2
พิมพ์ tinydict # พจนานุกรมเอาท์พุทเต็มรูปแบบ
tinydict.keys พิมพ์ () # เอาท์พุทคีย์ทั้งหมด
tinydict.values ​​พิมพ์ () # ส่งออกค่าทั้งหมด

เอาท์พุทคือ:

นี้เป็นหนึ่งในนี้เป็นสอง { 'ลึก': 'ขาย', 'รหัส' 6734 ',' ชื่อ ':' จอห์น '} [' ลึก ',' รหัส ',' ชื่อ '] [' ขาย '6734' จอห์น ']


งูหลามแปลงชนิดข้อมูล

บางครั้งเราจำเป็นที่จะต้องสร้างขึ้นในแปลงชนิดของข้อมูลแปลงชนิดของข้อมูลที่คุณจะต้องพิมพ์ข้อมูลเป็นชื่อฟังก์ชั่น

ฟังก์ชั่นจำนวนมากสามารถดำเนินการแปลงระหว่างชนิดข้อมูล ฟังก์ชั่นเหล่านี้กลับวัตถุใหม่ที่แสดงถึงค่าที่แปลง

ฟังก์ชัน ลักษณะ

int (x [ฐาน])

แปลง x เป็นจำนวนเต็ม

ยาว (x [ฐาน])

แปลง x เพื่อจำนวนเต็มยาว

ลอย (x)

เปลี่ยนไปเป็นจำนวน x จุดลอยตัว

คอมเพล็กซ์ (จริง [imag])

สร้างที่ซับซ้อน

STR (x)

วัตถุที่ถูกแปลงเป็น x สตริง

Repr (x)

วัตถุ X จะถูกแปลงเป็นนิพจน์สตริง

EVAL (STR)

มันใช้ในการคำนวณสตริงแสดงออกหลามที่ถูกต้องและส่งกลับวัตถุ

tuple (s)

ลำดับ s เข้าไปในขอบเขตของ

รายการ (s)

ลำดับ s จะถูกแปลงไปยังรายการ

ชุด (s)

แปลงไปตั้งค่าตัวแปร

Dict (ง)

สร้างพจนานุกรม D ต้องเป็นลำดับ (ที่สำคัญค่า) ขอบเขตของ

frozenset (s)

แปลงเป็นคอลเลกชันที่ไม่เปลี่ยนรูป

Chr (x)

จะแปลงเป็นจำนวนเต็มอักขระ

unichr (x)

จำนวนเต็มจะถูกแปลงเป็นตัวอักษร Unicode

อ๊อด (x)

แปลงตัวอักษรให้เป็นค่าจำนวนเต็ม

ฐานสิบหก (x)

จำนวนเต็มจะถูกแปลงเป็นสตริงเลขฐานสิบหก

ตุลาคม (x)

จำนวนเต็มจะถูกแปลงเป็นสตริงฐานแปด