จะประกาศและเพิ่มไอเท็มในอาร์เรย์ใน Python ได้อย่างไร?


386

ฉันกำลังพยายามเพิ่มรายการลงในอาร์เรย์ในหลาม

ฉันวิ่ง

array = {}

จากนั้นฉันพยายามเพิ่มบางสิ่งในอาร์เรย์นี้โดยทำ:

array.append(valueToBeInserted)

ดูเหมือนจะไม่มี.appendวิธีการนี้ ฉันจะเพิ่มรายการลงในอาร์เรย์ได้อย่างไร

คำตอบ:


692

{}หมายถึงพจนานุกรมที่ว่างเปล่าไม่ใช่อาร์เรย์ / รายการ []สำหรับรายการหรืออาร์เรย์ที่คุณต้องการ

ในการเริ่มต้นรายการว่างให้ทำดังนี้

my_list = []

หรือ

my_list = list()

ในการเพิ่มองค์ประกอบให้กับรายการให้ใช้ append

my_list.append(12)

ไปextendยังรายการที่จะรวมองค์ประกอบจากการใช้รายการอื่นextend

my_list.extend([1,2,3,4])
my_list
--> [12,1,2,3,4]

ในการลบองค์ประกอบออกจากรายการให้ใช้ remove

my_list.remove(2)

พจนานุกรมเป็นตัวแทนชุดของคู่คีย์ / ค่าที่รู้จักกันว่าอาร์เรย์ที่เชื่อมโยงหรือแผนที่

ในการเริ่มต้นใช้พจนานุกรมเปล่า{}หรือdict()

พจนานุกรมมีกุญแจและค่า

my_dict = {'key':'value', 'another_key' : 0}

ในการขยายพจนานุกรมด้วยเนื้อหาของพจนานุกรมอื่นคุณสามารถใช้updateวิธีนี้ได้

my_dict.update({'third_key' : 1})

เพื่อลบค่าออกจากพจนานุกรม

del my_dict['key']

โอ้ตกลงฉันเข้าใจว่ามันเป็นรายการที่จะต้องมีคีย์และค่า แต่ฉันเดาไม่ได้
AkshaiShah

38

ไม่ถ้าคุณทำ:

array = {}

ในตัวอย่างของคุณคุณใช้arrayเป็นพจนานุกรมไม่ใช่อาร์เรย์ หากคุณต้องการอาร์เรย์ใน Python คุณใช้ list:

array = []

จากนั้นในการเพิ่มรายการที่คุณทำ:

array.append('a')

1
Nitpicking: คุณไม่ต้องประกาศอะไรเลย คุณสร้างชื่อในขอบเขตปัจจุบันอ้างถึงวัตถุพจนานุกรม / รายการ

16

อาร์เรย์ (เรียกว่าlistในไพ ธ อน) ใช้[]สัญกรณ์ {}ใช้สำหรับdict(เรียกอีกอย่างว่าตารางแฮช, อาร์เรย์ที่เกี่ยวข้อง, ฯลฯ ในภาษาอื่น ๆ ) ดังนั้นคุณจะไม่มี 'ต่อท้าย' สำหรับ dict

หากคุณต้องการอาร์เรย์ (รายการ) ให้ใช้:

array = []
array.append(valueToBeInserted)

11

เพื่อความสำเร็จคุณสามารถทำสิ่งนี้ได้:

array = []
array += [valueToBeInserted]

หากเป็นรายการสตริงสิ่งนี้จะใช้งานได้:

array += 'string'

2

ในบางภาษาเช่นJAVAคุณกำหนดอาเรย์โดยใช้เครื่องหมายปีกกาดังต่อไปนี้ แต่ในไพ ธ อนนั้นมีความหมายแตกต่างกัน:

Java:

int[] myIntArray = {1,2,3};
String[] myStringArray = {"a","b","c"};

อย่างไรก็ตามใน Python วงเล็บปีกกาจะใช้ในการกำหนดพจนานุกรมซึ่งต้องการการkey:valueกำหนดเป็น{'a':1, 'b':2}

ในการกำหนดอาร์เรย์ (ซึ่งเรียกว่า list ใน python) จริงๆคุณสามารถทำได้:

งูหลาม:

mylist = [1,2,3]

หรือตัวอย่างอื่น ๆ เช่น:

mylist = list()
mylist.append(1)
mylist.append(2)
mylist.append(3)
print(mylist)
>>> [1,2,3]

2

คุณยังสามารถทำสิ่งต่อไปนี้

array = numpy.append(array, value)

โปรดทราบว่าnumpy.append()วิธีการส่งกลับวัตถุใหม่ดังนั้นหากคุณต้องการแก้ไขอาร์เรย์เริ่มต้นของคุณคุณต้องเขียน:array = ...


-1

ฉันเชื่อว่าคุณผิดทั้งหมด คุณต้องทำ:

array = array[] เพื่อที่จะกำหนดมันแล้ว:

array.append ["hello"] เพื่อเพิ่ม


4
วิธีที่ถูกต้องในการกำหนดอาเรย์คือarray = []
Shai

1
array = list()นอกจากนี้คุณยังสามารถกำหนดได้โดยใช้ หมายเหตุการกำหนดมันเป็นอาร์เรย์โดยใช้ [] ให้ฟังก์ชั่นที่เฉพาะเจาะจงสามารถใช้ได้เฉพาะกับอาร์เรย์เช่นการหารอาร์เรย์โดยจำนวนเต็มเดียว อดีต array/3
Dalton Whyte

SyntaxError: ไวยากรณ์ที่ไม่ถูกต้อง
CodeGuru

เพียงติดรายการเมื่อใช้หลาม
CodeGuru
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.