อาร์เรย์ — คือโครงสร้างข้อมูลที่เก็บชุดของค่า (เรียกว่าองค์ประกอบของอาร์เรย์) โดยแต่ละค่าจะถูกระบุด้วยดัชนี ถูกกำหนดโดยใช้วงเล็บเหลี่ยม [] ตัวอย่างเช่น คำสั่ง q = [] หมายความว่าตัวแปร q เก็บอาร์เรย์ว่าง ถ้า q = [2, 5, 7, 4, 9] อาร์เรย์จะมี 5 องค์ประกอบ — นี่คือความยาวของมัน ดัชนีขององค์ประกอบ ซึ่งแสดงตำแหน่งในอาร์เรย์ เริ่มต้นที่ 0 ดังนั้น ดัชนีขององค์ประกอบ "2" คือ 0 และดัชนีขององค์ประกอบ "4" ในอาร์เรย์ของเราคือ 3

ตัวอย่าง: array=[1,2,3,4] หรือ array1=["mother","father","son","daughter"]

ตัวอย่างการเข้าถึงองค์ประกอบของอาร์เรย์: array[1] (คืนค่า 2)

ดิกชันนารี — คือโครงสร้างข้อมูลที่แสดงถึงชุดขององค์ประกอบที่จัดระเบียบเป็นพิเศษซึ่งเก็บข้อมูล ข้อมูลทั้งหมดจะถูกเก็บในรูปแบบของคู่คีย์-ค่า การเข้าถึงองค์ประกอบข้อมูลจะทำโดยใช้คีย์ คีย์จะต้องไม่ซ้ำกันภายในดิกชันนารีเดียว ในขณะที่ข้อมูล (ค่า) สามารถซ้ำกันได้หากจำเป็น

ตัวอย่าง: {"SLU":12345,"Name":"Men's t-shirt, white","Size":50,"Price":1000}

ตัวอย่างการเข้าถึงองค์ประกอบของอาร์เรย์: dictionary["Array"] (คืนค่า 12345)

ทั้งอาร์เรย์และดิกชันนารีสามารถมีโครงสร้างที่ซับซ้อนหรือซ้อนกันได้ — กล่าวคือ สามารถบรรจุซึ่งกันและกันได้ ตัวอย่างเช่น:

อาร์เรย์ของดิกชันนารี: products=[{"SKU":12345,"Name":"Men's t-shirt, white","Size":50,"Price":1000},{"SKU":12346,"Name":"Men's t-shirt, white","Size":52,"Price":1000}]

นิพจน์ s = {} หมายความว่า ตัวแปร s เก็บดิกชันนารีที่ไม่มีองค์ประกอบ เราสามารถใส่คู่คีย์-ค่าลงไปได้ หรือแม้แต่หลายคู่: s = {"key1":"value1", "key2":"value2","key3":"value3"} คีย์และค่าแต่ละตัวจะอยู่ในเครื่องหมายคำพูด มีเครื่องหมายโคลอนวางระหว่างคีย์และค่า และคู่คีย์-ค่าจะถูกคั่นด้วยเครื่องหมายจุลภาค

อาร์เรย์และดิกชันนารีสามารถซ้อนกันได้ มาดูตัวอย่างกัน:

rainbow = [red, orange, yellow, green, light blue, blue, purple] - นี่คืออาร์เรย์

ถ้าเราเขียน

rainbow = {"every":"red","hunter":"orange","wants":" yellow","know":"green","where":"light blue","sits":"blue","pheasant":"purple"}

  • เราจะได้ดิกชันนารี

ถ้าเรามองดูรุ้งอย่างใกล้ชิด เราจะเห็นว่า ตัวอย่างเช่น สีฟ้าอ่อนนั้นซับซ้อนกว่าและประกอบด้วยเทอร์ควอยซ์ ฟ้าอ่อน และฟ้าเข้ม มาเขียนกัน: light blue = [turquoise,light blue, dark blue] ตอนนี้มาแทรกอาร์เรย์ "blue" ของเราลงในดิกชันนารี "rainbow":

rainbow = {"first_color":"red","second_color":"orange","third_color":"yellow","forth_color":"green","sixth_color":"blue","last_color":"purple"}

แล้วเราจะระบุที่อยู่ขององค์ประกอบ เช่น "turquoise" ได้อย่างไร?

และในอาร์เรย์ การระบุที่อยู่จะทำโดย ดัชนี ดังนั้นที่อยู่ขององค์ประกอบ "turquoise" คือ 0

สรุป: ["where"][0] - คือที่อยู่ขององค์ประกอบ "turquoise"

วิธีการทำงานกับการระบุที่อยู่ (JSON)

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

วิธีที่ดีที่สุดในการทำความเข้าใจหลักการของการระบุที่อยู่ใน JSON คือผ่านตัวอย่าง:{"suggestions": [{"value": "Dirham", "unrestricted_value": "Dirham", "data": {"code": "784", "strcode": "AED", "name": "Dirham", "country": "UAE"}}]}

ที่นี่เรามีดิกชันนารีที่มีคู่คีย์-ค่าเดียว suggestions - คีย์สำหรับอาร์เรย์: [{"value": "Dirham", "unrestricted_value": "Dirham", "data": {"code": "784", "strcode": "AED", "name": "Dirham", "country": "UAE"}}]

ค่าของคีย์ suggestions คืออาร์เรย์ที่มีองค์ประกอบเดียว — ดิกชันนารี: {"value": "Dirham", "unrestricted_value": "Dirham", "data": {"code": "784", "strcode": "AED", "name": "Dirham", "country": "UAE"}} suggestions|0 - คือคีย์ไปยังองค์ประกอบแรก (และองค์ประกอบเดียว) ของอาร์เรย์ {"value": "Dirham", "unrestricted_value": "Dirham", "data": {"code": "784", "strcode": "AED", "name": "Dirham", "country": "UAE"}}

suggestions|0|value - คือคีย์ไปยังค่า "Belarusian ruble"

{"suggestions": [{"value": "Dirham", "unrestricted_value": "Dirham", "data": {"code": "784", "strcode": "AED", "name": "Dirham", "country": "UAE"}}]}

เส้นทางคีย์ที่ยาวที่สุดใน JSON นี้คือ: suggestions|0|data|strcode - คือคีย์สำหรับ AED

{"suggestions": [{"value": "Dirham", "unrestricted_value": "Dirham", "data": {"code": "784", "strcode": "AED", "name": "Dirham", "country": "UAE"}}]}

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

ในการระบุที่อยู่ ตัวเลขจะถูกปฏิบัติเหมือนสตริงและในทางกลับกัน ตัวอย่างเช่น '6' และ 6 ถือว่าเท่ากัน

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

ตัวอย่างเช่น หากคุณต้องการจำกัดการเข้าถึงส่วนเฉพาะของบอทให้กับผู้ใช้บางคน คุณสามารถเก็บ ID ของพวกเขาไว้ในอาร์เรย์ วางไว้ในตัวแปรโครงการส่วนกลาง และใช้ในเงื่อนไขของบล็อกหรือตรรกะลูกศรเพื่อตรวจสอบว่า ID ของผู้ใช้อยู่ในอาร์เรย์หรือไม่

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

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

การทำงานกับอาร์เรย์

วิธีสร้างอาร์เรย์

การสร้างอาร์เรย์ - การประกาศอาร์เรย์

array_name = []

วิธีล้างอาร์เรย์

การล้างอาร์เรย์โดยพื้นฐานแล้วเหมือนกับการประกาศอาร์เรย์ว่าง:

array_name = []

วิธีเข้าถึงองค์ประกอบของอาร์เรย์

คำอธิบาย

name[index] - การเข้าถึงองค์ประกอบของอาร์เรย์โดยดัชนีหรือโดยค่า

ตัวอย่าง

มาดูตัวอย่างการทำงานกับอาร์เรย์กัน:

ตัวอย่างการเข้าถึงองค์ประกอบของอาร์เรย์โดยดัชนี:

ตัวอย่างการรับองค์ประกอบสุดท้ายของอาร์เรย์:

ตัวอย่างโค้ดสำหรับคัดลอก
/*การเข้าถึงโดยดัชนี*/
arrayI = [1, "2", 3, 4, 5]
k=arrayI[3]
/*การเข้าถึงโดยดัชนีจากอาร์เรย์ที่ซ้อนกัน*/
arrayV = [[1, "2", 4, 5], "2", 3, 4, 5]
v=arrayV[0][1]

/*ตัวอย่างการรับองค์ประกอบสุดท้าย*/
array = [1, "2", 3, 4, 5]
/*การรับองค์ประกอบสุดท้ายของอาร์เรย์*/
last = array[-1]

วิธีแทนที่ค่าในอาร์เรย์

คำอธิบาย

name[index] = value - การแทนที่องค์ประกอบของอาร์เรย์ตามดัชนีที่กำหนด

ตัวอย่าง

ตัวอย่าง:

ในการแทนที่ค่าขององค์ประกอบอาร์เรย์ที่ระบุ ให้ใช้ไวยากรณ์ต่อไปนี้: array_name[index] = value

คำตอบ:

ตัวอย่างโค้ดสำหรับคัดลอก
array = [1, "2", 3, 4, 5]

/*แทนที่ในอาร์เรย์/ดิกชันนารี*/
array[2] = 888

/*เพิ่มในดิกชันนารี   dicts['key'] = 'VVVVVVVVVVV'*/
dicts['m']=new

/*แทนที่ในอาร์เรย์/ดิกชันนารีเป็นตัวเลข*/
array[3] = int('888')
dicts['a'] = int('555')

วิธีตรวจสอบว่ามีองค์ประกอบอยู่ในอาร์เรย์หรือไม่

คำอธิบาย

in_array(mass, value) - เพื่อตรวจสอบว่ามีองค์ประกอบอยู่ในอาร์เรย์หรือไม่

พารามิเตอร์: \ ! mass - อาร์เรย์ \ ! value - ค่าสำหรับค้นหา

คืนค่า True หรือ False ขึ้นอยู่กับว่าพบค่าหรือไม่

ตัวอย่าง

ตัวอย่าง:

ตัวอย่างโค้ดสำหรับคัดลอก
s = ["Mike", "Peter", "Helen"] 
q = if(in_array(s, 'Ann'), 'Found', 'Another string')

วิธีหาความยาวของอาร์เรย์

คำอธิบาย

arr_len(mass) - เพื่อหาความยาวของอาร์เรย์

พารามิเตอร์:\ ! mass - อาร์เรย์

ผลลัพธ์: คืนค่าตัวเลข - ความยาวของอาร์เรย์

ระวังเมื่อส่งพารามิเตอร์ไปยังฟังก์ชัน! ถ้าเรียกใช้โดยไม่มีพารามิเตอร์ จะคืนค่า 0; ถ้าพารามิเตอร์ไม่ใช่อาร์เรย์หรือดิกชันนารี จะคืนค่า -1

ตัวอย่าง

ตัวอย่างการใช้งาน:

ผลลัพธ์:

ตัวอย่างโค้ดสำหรับคัดลอก
s = ["Mike", "Peter", "Helen"] 
q = if(arr_len(s) > 5, 'Group is full', 'Join our team!')

วิธีแทรกองค์ประกอบที่ส่วนท้ายของอาร์เรย์?

คำอธิบาย

append(mass, element, priznak) - เพื่อแทรกองค์ประกอบที่ส่วนท้ายของอาร์เรย์

พารามิเตอร์:

! mass - อาร์เรย์\ ! element - องค์ประกอบที่จะแทรก
priznak - แฟล็กที่ระบุว่าเป็นอาร์เรย์หรือดิกชันนารี

คืนค่าอาร์เรย์ที่มีค่าเพิ่มที่ส่วนท้าย ในการอัปเดตอาร์เรย์ต้นฉบับ ให้ใช้การกำหนด: mass = append(mass, element, priznak)

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

ตัวอย่าง

ตัวอย่างการใช้งาน:

ตัวอย่างการเพิ่มและลบออกจากอาร์เรย์:

ตัวอย่างการสร้างอาร์เรย์ที่มีอาร์เรย์อยู่ภายใน:

ผลลัพธ์ของการดำเนินการฟังก์ชัน:

ตัวอย่างโค้ดสำหรับคัดลอก
s = ["Mike", "Peter", "Helen"]
q = append(s, 'Max')

วิธีแทรกค่าที่ตำแหน่งเฉพาะในอาร์เรย์

คำอธิบาย

insert(mass, index, value, priznak) - เพื่อแทรกองค์ประกอบลงในตำแหน่งอาร์เรย์ที่ระบุ

พารามิเตอร์: \ ! mass - อาร์เรย์\ ! index - ตำแหน่งแทรก\ ! value - ค่า
indicator - ตัวบ่งชี้การเพิ่มลงในอาร์เรย์หรือดิกชันนารี

ผลลัพธ์:
คืนค่าอาร์เรย์ที่มีค่าเพิ่มที่ตำแหน่งที่ระบุ กล่าวอีกนัยหนึ่ง ในการเพิ่มค่าไปยังอาร์เรย์เดียวกัน ให้ใช้คำสั่งในรูปแบบต่อไปนี้: mass = insert(mass, index, value, indicator)

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

ตัวอย่าง

ตัวอย่าง:

ผลลัพธ์:

มาดูตัวอย่างที่ซับซ้อนมากขึ้น - การเพิ่มดิกชันนารี t ลงในอาร์เรย์ s:

ในฟังก์ชัน เราระบุว่าเราต้องการเพิ่มดิกชันนารีที่ตำแหน่ง 1 มาดูผลลัพธ์กัน:

ตัวอย่างโค้ดสำหรับคัดลอก
s = ["Mike", "Peter", "Helen"]
q = insert(s, 1, 'Max')

วิธีลบสมาชิกออกจากอาร์เรย์

del() | del | remove()

คำอธิบาย

ตามดัชนี

del(mass, key) - ลบสมาชิกออกจากอาร์เรย์ตามดัชนีของมัน

พารามิเตอร์: \ ! mass - ชื่ออาร์เรย์;\ ! key - ดัชนีของค่าที่จะถูกลบ

ส่งคืนอาร์เรย์ใหม่ที่ไม่มีสมาชิกที่ถูกลบออกไป อาร์เรย์ต้นฉบับจะไม่มีการเปลี่ยนแปลง หากต้องการลบและอัปเดตอาร์เรย์เดียวกัน ให้ใช้คำสั่งในรูปแบบ:
mass = del(mass, key)

หากอาร์เรย์ของคุณมีตัวเลขและคุณต้องการลบสมาชิกตามค่า ให้ใช้ฟังก์ชัน remove()

del name['index'] - การลบค่าออกจากอาร์เรย์ตามดัชนี

พารามิเตอร์: \ ! name- ชื่ออาร์เรย์;\ ! index- ดัชนีของค่าที่จะถูกลบ

ตามค่า

remove(mass, value) - เพื่อลบค่าออกจาก อาร์เรย์

พารามิเตอร์: \ ! mass - ชื่ออาร์เรย์; \ ! value - ค่าที่จะลบออกจากอาร์เรย์

ผลลัพธ์:
ส่งคืนอาร์เรย์ที่ถูกแก้ไข โดยอาร์เรย์ต้นฉบับจะไม่มีการเปลี่ยนแปลง หากต้องการลบสมาชิกและอัปเดตอาร์เรย์เดียวกัน ให้ใช้คำสั่งในรูปแบบต่อไปนี้:
mass = remove(mass, key)

ตัวอย่าง

ตัวอย่างการลบสมาชิกตามดัชนี:

ตัวอย่างการลบสมาชิกอาร์เรย์ตามค่า:

ตัวอย่างโค้ดสำหรับคัดลอก
/*Removing an array element by its index:*/
array = ["1",2, 3, "4"]
del array['1']

array1 = ["1",2, 3, "4"]
array1=del(array1,0)


/*Removing an array element by its value:*/
array = ["1",2, 3, "4"]
array=remove(array, '4') 

array1 = ["1",2, 3, "4"]
array1=remove(array1, 2) 

วิธีหาตำแหน่งของสมาชิกในอาร์เรย์

คำอธิบาย

index(mass, value)

พารามิเตอร์: \ ! mass - ชื่ออาร์เรย์ \ !** value -** ค่าที่ต้องการหาตำแหน่ง

หากสมาชิกไม่อยู่ในอาร์เรย์ ฟังก์ชันจะคืนค่า -1

ตัวอย่าง

ตัวอย่างการหาตำแหน่งของสมาชิกในอาร์เรย์:

มาดูผลลัพธ์อย่างละเอียด:

อย่างที่เห็น เนื่องจากเลข 5 ไม่ได้อยู่ในอาร์เรย์ ฟังก์ชันจึงคืนค่า -1

ตัวอย่างโค้ดสำหรับคัดลอก
array = ["1",2, 3, "4"]
search1=index(array,"1")
search2=index(array,5)

วิธีแปลงอาร์เรย์เป็นข้อความที่มนุษย์อ่านได้

คำอธิบาย

massive_to_text(massive, header, numbered,delimiter1,delimiter2)

พารามิเตอร์:

!** massive** – อาร์เรย์ที่จะแสดง,
header – หัวเรื่องที่จะปรากฏที่จุดเริ่มต้นของผลลัพธ์
numbered – หากมีการส่งค่าใดๆ สมาชิกอาร์เรย์จะถูกกำหนดหมายเลข
delimiter1 – อักขระที่วางไว้ที่ท้ายแต่ละบรรทัดของสมาชิก (ค่าเริ่มต้นคือ ';'),
delimiter2 – อักขระที่ใช้หลังหมายเลขรายการเมื่อเปิดใช้งานการกำหนดหมายเลข (ค่าเริ่มต้นคือ ')')

ตัวอย่าง

ตัวอย่างง่ายๆ:

เป็นผลลัพธ์ อาร์เรย์จะแสดงเป็นรายการที่มีหมายเลข:

ตัวอย่างโค้ดสำหรับคัดลอก
Array1 = [1, 2, 3, "a", "b", "c"] 
text = array_to_text(Array1, 'title', 1) 

วิธีแยกอาร์เรย์หนึ่งออกจากอีกอาร์เรย์หนึ่ง

คำอธิบาย

except_arr(mas1, mas2)

พารามิเตอร์:

!** mas1** - อาร์เรย์ที่จะแยกสมาชิกออก,\ !** mas2** - อาร์เรย์ที่มีสมาชิกที่จะถูกแยกออก

ตัวอย่าง

มาดูตัวอย่าง:

ตัวอย่างโค้ดสำหรับคัดลอก
s1 = [1, 2, 3]
s2 = [2, 3]
s3 = except_arr(s1, s2)

วิธีหาจุดตัดของอาร์เรย์

คำอธิบาย

cross_arr(mas1, mas2)

พารามิเตอร์:

!** mas1** - อาร์เรย์ที่จะค้นหา\ !** mas2** - อาร์เรย์ที่มีสมาชิกที่จะค้นหา

ตัวอย่าง

ตัวอย่างโค้ดสำหรับคัดลอก
s1 = [1, 2, 3]
s2 = [2, 3]
s3 = cross_arr(s1, s2)

mas1 = ["didn't", "except,", "that", "everything", "is", "so", "simple.", "thanks"]
mas2 = ["everything", "thanks"]
mas3 = cross_arr(mas1, mas2)

วิธีรวมอาร์เรย์

คำอธิบาย

ไม่มีฟังก์ชันในตัวสำหรับการรวมอาร์เรย์โดยเฉพาะ แต่สามารถทำได้ง่ายๆ:

ในการรวมอาร์เรย์ ให้ทำการต่อสตริง จากนั้นแทนที่ '][' ด้วยเครื่องหมายจุลภาค ','

ตัวอย่าง

นี่คือตัวอย่างในฟิลด์ Calculator

นี่คือตัวอย่างการทำงานของบอท

ตัวอย่างโค้ดสำหรับคัดลอก
a = [1,2,3,4] 
b = [5,6,7] 
sum = a + b 
answer = replace(sum, '][', ',') 

วิธีรวมสมาชิกของอาร์เรย์

คำอธิบาย

sum_array(array)

พารามิเตอร์:

array - อาร์เรย์ที่ต้องการรวมสมาชิก

ข้อควรระวัง!** ฟังก์ชันนี้ทำงานกับอาร์เรย์ในรูปแบบเฉพาะ**

รูปแบบที่ยอมรับได้: - [1,2,3,4] หรือ '[1,2,3,4]'
หากอาร์เรย์มีตัวเลขที่แสดงเป็นสตริง จะต้องใส่ไว้ในเครื่องหมายคำพูดคู่ เช่น [1,2,3,"-4"]
หากอาร์เรย์มีสตริงที่เป็นตัวอักษร การคำนวณจะล้มเหลว

ตัวอย่างการใช้งานที่ไม่ถูกต้อง:
mas = [1,2,3,"a"]
result = sum_array(mas)

ซึ่งจะทำให้เกิดข้อผิดพลาด: array has unsupported elements

ตัวอย่าง

ผลลัพธ์:

ตัวอย่างโค้ดสำหรับคัดลอก
mas = [1,2,3,4] 
result = sum_array(mas) 

วิธีสลับสมาชิกของอาร์เรย์

คำอธิบาย

shuffle_massive(massive)

พารามิเตอร์:

massive - อาร์เรย์ที่ต้องการสลับสมาชิก

ตัวอย่าง

ผลลัพธ์การทำงานของฟังก์ชัน:

ตัวอย่างโค้ดสำหรับคัดลอก
Massive1 = [1, 2, 3, "a", "b", "c"]
Massive2 = shuffle_massive(Massive1) 

สำหรับการเรียงลำดับอาร์เรย์และดิกชันนารี

sort() | sort_by_value()

คำอธิบาย

การเรียงลำดับในอาร์เรย์หรือดิกชันนารี

sort(mass, b) - เรียงลำดับอาร์เรย์ตามค่า และดิกชันนารีตามคีย์

พารามิเตอร์:

!** mass** - อาร์เรย์/ดิกชันนารี
b - ลำดับการเรียง (False – จากน้อยไปมาก (ค่าเริ่มต้น), True – จากมากไปน้อย)

การเรียงลำดับดิกชันนารีตามค่า

sort_by_value(dict, b) - เรียงลำดับดิกชันนารีตามค่า

พารามิเตอร์:\ !** dict**- ดิกชันนารี
b - ลำดับการเรียง (False – จากน้อยไปมาก (ค่าเริ่มต้น), True – จากมากไปน้อย)

ตัวอย่าง

ตัวอย่างการเรียงลำดับอาร์เรย์จากมากไปน้อยและดิกชันนารีจากน้อยไปมาก:

การเรียงลำดับดิกชันนารีตามค่า:

การแปลงอาร์เรย์/ดิกชันนารีเป็นปุ่ม

tools_make_button_str_checker() | tools_check_user_input()

คำอธิบาย

การแปลงอาร์เรย์/ดิกชันนารีเป็นปุ่ม

tools_make_button_str_checker(values_list, key, in_line, button_type, checker_with_numbers)

พารามิเตอร์:

! values_list - อาร์เรย์ของสตริงหรือดิกชันนารีที่จะใช้ข้อมูลในการสร้างคีย์บอร์ดหรือรายการที่มีหมายเลข

key - คีย์ที่จะใช้ในการเลือกจากอาร์เรย์ของดิกชันนารี

in_line - จำนวนปุ่มต่อแถว (ค่าเริ่มต้น: 1)

button_type - ประเภทของปุ่ม (ค่าเริ่มต้น: reply keyboard)
ค่าที่เป็นไปได้:
0 - reply keyboard,
1 - inline keyboard (ปุ่มในข้อความ)

checker_with_numbers - ว่าจะเพิ่มหมายเลขปุ่มลงในอาร์เรย์ "checker" หรือไม่
ค่าที่เป็นไปได้:
0 - ไม่เพิ่มหมายเลข,
1 - เพิ่มหมายเลข (ค่าเริ่มต้น: 1 – เพิ่มหมายเลข)

ผลลัพธ์ของฟังก์ชัน — ดิกชันนารีในรูปแบบ:

{"numbered_list":"1. T-shirts\n2. Shorts\n3. Socks\n4. Caps\n","buttons":[{"type":"inline","text":"T-shirts","line":0,"index_in_line":0},{"type":"inline","text":"Shorts","line":0,"index_in_line":1},{"type":"inline","text":"Socks","line":1,"index_in_line":0},{"type":"inline","text":"Caps","line":1,"index_in_line":1}],"checker":"T-shirts;1;Shorts;2;Socks;3;Caps;4;"}

จากนั้นสามารถแทรกค่าดิกชันนารีลงในฟิลด์ในตัวสร้าง:

การรับค่าดิกชันนารีตามการเลือกของลูกค้า

tools_check_user_input(values_list, user_input, key, return_key)

พารามิเตอร์:

!** values_list** - อาร์เรย์ของสตริงหรือดิกชันนารีที่จะใช้ข้อมูลในการสร้างคีย์บอร์ดหรือรายการที่มีหมายเลข\ ตัวอย่างดิกชันนารี: [{"text":"T-shirts","price":100},{"text":"Shorts","price":150},{"text":"Socks","price":20},{"text":"Caps","price":50}]\ !** user_input** - ค่าที่ผู้ใช้ป้อนจากค่าใดค่าหนึ่งใน values_list\ ตัวอย่างค่า: Caps
key - คีย์ที่ใช้ในการเลือกจากอาร์เรย์ของดิกชันนารี values_list\ ตัวอย่างคีย์: text
return_key - ค่าที่ส่งคืนสำหรับคีย์ที่ระบุจาก values_list\ ตัวอย่างค่าที่ส่งคืน: price

ตัวอย่าง

มาวิเคราะห์การใช้งานฟังก์ชันด้วยตัวอย่างตะกร้าสินค้า:

1.กำหนดอาร์เรย์และแปลงเป็นรายการที่มีหมายเลข ปุ่ม และรายการค่าที่เป็นไปได้ (สำหรับเมสเซนเจอร์ที่ไม่มีปุ่ม) โดยใช้ฟังก์ชัน tools_make_button_str_checker()

2.ใช้ปุ่มและค่า numbered_list ที่ได้เพื่อเปิดใช้งานการเลือกสินค้า:

3.ใช้รายการค่าที่เป็นไปได้ checker เพื่อตรวจสอบอินพุตของลูกค้า:

4.สุดท้าย แสดงราคาของสินค้าที่เลือกให้ลูกค้าเห็น สะดวกในการทำเช่นนี้โดยใช้ฟังก์ชัน tools_check_user_input()

ตัวอย่างโค้ดให้คัดลอก
list = [{"text":"T-shirts","price":100},{"text":"Shorts","price":150},{"text":"Socks","price":20},{"text":"Caps","price":50}]
res = tools_make_button_str_checker(list, "text", "2", "1")
numbered_list = res['numbered_list']
buttons = res['buttons']
checker = res['checker']

res_check = tools_check_user_input(list, user_input, 'text', 'price')

การเลือกข้อมูลจากอาร์เรย์

คำอธิบาย

array_slice(array, start_index, end_index)

พารามิเตอร์:

! array - อาร์เรย์ \ ! start_index - จุดเริ่มต้นของชิ้นส่วน
end_index - จุดสิ้นสุดของชิ้นส่วน (ค่าเริ่มต้น: จนถึงจุดสิ้นสุด)

ตัวอย่าง

มาเลือกอาร์เรย์ย่อยโดยเริ่มจากองค์ประกอบที่ 1:

res จะเป็น ["Shorts", "Socks", "Caps"]

อีกตัวอย่างหนึ่งของการเลือกอาร์เรย์ย่อยจากองค์ประกอบที่ 0 ถึงองค์ประกอบที่ 2 ของอาร์เรย์:

res จะเป็น ["T-shirts", "Shorts"]

ตัวอย่างโค้ดให้คัดลอก
list = ["T-shirts", "Shorts", "Socks", "Caps"] 
res = array_slice(list, 1)

res = array_slice(list, 0, 2)

การแยกองค์ประกอบของอาร์เรย์

ฟังก์ชัน

unpack_list(array, var_name) - เมธอดนี้จะวนซ้ำอาร์เรย์และสร้างตัวแปรแยกต่างหากสำหรับแต่ละองค์ประกอบในอาร์เรย์โดยมีชื่อเช่น var1, var2, var3 และอื่นๆ

! array - พารามิเตอร์ที่จำเป็น, อาร์เรย์ขององค์ประกอบ

var_name - พารามิเตอร์ที่ไม่บังคับ, สตริง หากระบุไว้ จะใช้สำหรับการตั้งชื่อองค์ประกอบที่ถูกแยก ตัวอย่าง:

หากระบุ var_name ชื่อตัวแปรจะถูกสร้างขึ้นโดยใช้ var_name

var_name ต้องเป็นไปตามกฎการตั้งชื่อตัวแปร

ตัวอย่าง

ตัวอย่างที่ 1:

array1 = ["one", "two", "three"]

ans1 = unpack_list(array1)

ผลลัพธ์ - ตัวแปรดีลที่ถูกสร้างขึ้น:

var1 = 'one'

var2 = 'two'

var3 = 'three'

ตัวอย่างที่ 2:

array2 = ["one", "two", "three"]

var_name = 'custom'

ans2 = unpack_list(array2, var_name)

ผลลัพธ์ - ตัวแปรดีลที่ถูกสร้างขึ้น:

custom1 = 'one'

custom2 = 'two'

custom3 = 'three'

วิธีคืนค่ารายการโดยไม่มีองค์ประกอบที่ซ้ำกัน

คำอธิบาย

remove_duplicates(array) - คืนค่ารายการโดยไม่มีองค์ประกอบที่ซ้ำกัน

! array - พารามิเตอร์ที่จำเป็น รายการองค์ประกอบดั้งเดิมที่มีรายการซ้ำ

ตัวอย่าง

ตัวอย่าง:

arr = [1, 2, 5, 1, 5, 3]

new_arr = remove_duplicates(arr)

ผลลัพธ์ - รายการ [1, 2, 5, 3] จะถูกกำหนดให้กับตัวแปร new_arr

วิธีสร้างดิกชันนารี

คำอธิบาย

การสร้างดิกชันนารี - การประกาศดิกชันนารี

name_dictionary = {}

วิธีล้างดิกชันนารี

คำอธิบาย

การล้าง - ไม่มีอะไรมากไปกว่าการประกาศดิกชันนารีว่าง

name_dictionary = {}

วิธีรับค่าดิกชันนารีตามคีย์

คำอธิบาย

name[key] - การรับองค์ประกอบดิกชันนารีตามคีย์

ตัวอย่าง

ตัวอย่างการทำงานกับดิกชันนารี:

ในกรณีนี้ เรากำลังเข้าถึงค่าตามคีย์ "a" หากต้องการดึงค่าจากดิกชันนารีโดยใช้คีย์เฉพาะ ให้ใช้รูปแบบต่อไปนี้: name_dictionary["key"]

คำตอบ:

ตัวอย่างโค้ดให้คัดลอก
dicts = {"a": "11", "d": "hi"}
/*getting from dictionary*/
aa = dicts["a"]

วิธีรับรายการคีย์จากดิกชันนารี

คำอธิบาย

dict_keys_to_array(data) - เพื่อรับรายการคีย์ของดิกชันนารีข้อมูล

ตัวอย่าง

ตัวอย่าง: รับรายการคีย์ทั้งหมดของดิกชันนารี

คำตอบ:

ตัวอย่างโค้ดให้คัดลอก
v={"A1":"orange","A2":"apricot","A3":"tangerine","A4":"apple","A5":"pear","A6":"kiwi","A7":"banana","A8":"peach"} 
key= dict_keys_to_array(v)

วิธีรับรายการค่าจากดิกชันนารี

คำอธิบาย

dict_values_to_array(data) - เพื่อรับรายการค่าจากดิกชันนารี

ตัวอย่าง

ตัวอย่าง:

คำตอบ:

ตัวอย่างโค้ดให้คัดลอก
v={"A1":"orange","A2":"apricot","A3":"tangerine","A4":"apple","A5":"pear","A6":"kiwi","A7":"banana","A8":"peach"}
value= dict_values_to_array(v)

วิธีรับค่าจากรายการดิกชันนารีตามคีย์ที่ระบุ

คำอธิบาย

get_values_by_key(data, key) - ช่วยให้คุณได้รับค่าจากรายการดิกชันนารีตามคีย์ที่ระบุ คืนค่ารายการของค่า

ตัวอย่าง

ตัวอย่าง: รับค่าจากรายการดิกชันนารีตามคีย์

คำตอบ:

ตัวอย่างโค้ดให้คัดลอก
data = [{"Product": "Product№1", "Price": 1500}, {"Product": "Product№2", "Price": 6000}]
key = "Product"
result = get_values_by_key(data, key)

วิธีแทนที่ค่าในดิกชันนารี

คำอธิบาย

name['key'] = value - การแทนที่ค่าองค์ประกอบดิกชันนารีตามคีย์ที่ระบุ หากระบุคีย์ที่ไม่มีอยู่ องค์ประกอบดิกชันนารีใหม่จะถูกเพิ่ม

คำอธิบาย

ตัวอย่าง:

หากต้องการแทนที่ค่าขององค์ประกอบอาร์เรย์เฉพาะ ให้เขียนการกำหนดเช่น array_name[index] = value หรือ dictionary_name[key] = value

คำตอบ:

ตัวอย่างโค้ดให้คัดลอก
dicts = {"a": "11", "d": "hi"}

/*Replace in a dictionary*/
dicts['d'] = AAAAA

/*Add in a dictionary   dicts['key'] = 'VVVVVVVVVVV'*/
dicts['m']=new

/*Replace in a dictionary with a number*/
dicts['a'] = int('555')

วิธีเพิ่มค่าในดิกชันนารี

คำอธิบาย

dictionary_name***['key'] = 'value'** -* การเพิ่มค่าใหม่ลงในดิกชันนารี

หากคีย์ไม่มีอยู่ก่อนหน้านี้ คู่คีย์-ค่าใหม่จะถูกเพิ่ม มิฉะนั้น ค่าสำหรับคีย์ที่ระบุจะถูกแทนที่

ตัวอย่าง

นี่คือตัวอย่างโค้ดในฟิลด์เครื่องคิดเลข

คำตอบ

ตัวอย่างโค้ดให้คัดลอก
/*adding a new value to the dictionary dicts['key'] = 'VVVVVVVVVVV'*/
dicts['m']=new

วิธีตรวจสอบว่ามีคีย์อยู่ในดิกชันนารีหรือไม่

คำอธิบาย

exist_key(mass, key) - เพื่อตรวจสอบว่ามีคีย์อยู่ในดิกชันนารีหรือไม่

พารามิเตอร์:

mass - ดิกชันนารี

key - คีย์ที่จะค้นหา

คืนค่า True หรือ False ขึ้นอยู่กับว่าพบคีย์หรือไม่

ตัวอย่าง

ตัวอย่างการใช้งาน:

ตัวอย่างโค้ดให้คัดลอก
s = {"1": 123, "2": 234, "q": {"w": "e"}} 
q = if(exist_key(s, 'q'), 'Found', 'Another line')

วิธีตรวจสอบตำแหน่งของคีย์ในดิกชันนารี

คำอธิบาย

key_index(mass, key) - เพื่อตรวจสอบตำแหน่งของคีย์ในดิกชันนารี

พารามิเตอร์:
mass - ดิกชันนารี
key - คีย์ที่จะค้นหา

ตำแหน่งในดิกชันนารีนับจาก 0 ดังนั้น องค์ประกอบแรกคือ 0 องค์ประกอบที่สองคือ 1 และอื่นๆ

ตัวอย่าง

ตัวอย่างการใช้งาน:

ผลลัพธ์:

ตัวอย่างโค้ดให้คัดลอก
s = {"1": 123, "2": 234, "q": {"w": "e"}} 
q = key_index(s, 'q')

วิธีรับจำนวนองค์ประกอบในดิกชันนารี

คำอธิบาย

arr_len(mass) - เพื่อกำหนดความยาวของดิกชันนารี

พารามิเตอร์:
mass - ดิกชันนารี

ผลลัพธ์: คืนค่าตัวเลข – ความยาวของดิกชันนารี

โปรดใช้ความระมัดระวังเมื่อส่งพารามิเตอร์ไปยังฟังก์ชัน: หากเรียกใช้ฟังก์ชันโดยไม่มีพารามิเตอร์ ฟังก์ชันจะคืนค่า 0 หากพารามิเตอร์ไม่ใช่รายการหรือดิกชันนารี ฟังก์ชันจะคืนค่า -1

ตัวอย่าง

ตัวอย่างการใช้งาน:

คำตอบ:

วิธีลบองค์ประกอบออกจากดิกชันนารี

คำอธิบาย

ตามดัชนีหรือคีย์

del(mass, key) - เพื่อลบองค์ประกอบออกจากรายการตามดัชนีหรือจากดิกชันนารีตามคีย์
ใช้พารามิเตอร์สองตัว: รายการ/ดิกชันนารีและดัชนี/คีย์ที่จะลบ
คืนค่าดิกชันนารีหรือรายการที่แก้ไขโดยไม่เปลี่ยนแปลงออบเจกต์ต้นฉบับ

หากค่าในรายการหรือดิกชันนารีเป็นตัวเลข ให้ใช้ฟังก์ชัน remove() เพื่อลบองค์ประกอบ

ตัวอย่าง

ตัวอย่างกับดิกชันนารี

ผลลัพธ์

ตัวอย่างกับอาร์เรย์

ผลลัพธ์

ตัวอย่างโค้ดให้คัดลอก

ตัวอย่างกับดิกชันนารี

s={"1":123, "2":234, "q":{"w":"e"}}

q=del(s,'q')

ตัวอย่างกับอาร์เรย์

s=["John", "Ann", "Sophie"]\

q=del(s, 1)

วิธีแปลงดิกชันนารีเป็นข้อความที่มนุษย์อ่านได้

คำอธิบาย

humanize(dict, delimiter, from_i, to_i)

พารามิเตอร์:

dict - ชื่อดิกชันนารี
delimiter - ตัวคั่นระหว่างบรรทัด
from_i - ดัชนีขององค์ประกอบที่จะเริ่มแสดงผล (นับจาก 0)
to_i - ดัชนีขององค์ประกอบที่จะสิ้นสุดการแสดงผล (ไม่รวม)

ตัวอย่าง

มาดูตัวอย่าง:

คำตอบ

ตัวอย่างโค้ดให้คัดลอก
dict = {"[id146467928|Alex]":"6","[id145255525|Маx]":"20"}
r = humanize(dict, ': ')

สำหรับการเรียงลำดับดิกชันนารี

sort() | sort_by_value()

คำอธิบาย

การเรียงลำดับดิกชันนารี

sort(dict, b) - เรียงลำดับรายการตามค่า และดิกชันนารีตามคีย์

พารามิเตอร์:

! dict- ดิกชันนารี

b - ทิศทางการเรียงลำดับ (False – จากน้อยไปมากตามค่าเริ่มต้น, True – จากมากไปน้อย)

การเรียงลำดับดิกชันนารีตามค่า

sort_by_value(dict, b) - การเรียงลำดับดิกชันนารีตามค่า

พารามิเตอร์:

! dict- ดิกชันนารี

b - ทิศทางการเรียงลำดับ (False – จากน้อยไปมากตามค่าเริ่มต้น, True – จากมากไปน้อย)

ตัวอย่าง

ตัวอย่าง: การเรียงลำดับรายการจากมากไปน้อยและดิกชันนารีจากน้อยไปมาก:

การเรียงลำดับดิกชันนารีตามค่า:

ตัวอย่างโค้ดให้คัดลอก

ตัวอย่าง: การเรียงลำดับรายการจากมากไปน้อยและดิกชันนารีจากน้อยไปมาก:

array1=[5,4,0,6,3,0]

array1=sort(array1, True)

dict={"Ann":5, "John":4, "Sophie":0, "Alex":6, "Kate":3, "Harry":0}

dict=sort(dict)

การเรียงลำดับดิกชันนารีตามค่า:

dict={"Ann":5, "John":4, "Sophie":0, "Alex":6, "Kate":3, "Harry":0}

dict=sort_by_value(dict)