במדריך זה, נלמד כיצד לקבל את התמורה והשילוב של נתונים נתונים באמצעות Python. נשתמש בחבילה המובנית של Python כדי למצוא את התמורה והשילוב של מספר נתון.
תמורה ושילוב הם חלק חיוני במתמטיקה. פִּיתוֹן מספק את ספריית itertools הכוללת את הפונקציות המובנות לחישוב תמורה ושילוב.
ייבוא הספרייה הנדרשת
כדי לחשב את התמורה והשילוב, עלינו לייבא את ספריית itertools. אנחנו יכולים לייבא אותו באמצעות הפקודה למטה.
import itertools
ההצהרה שלעיל תייבא את ספריית itertools ויהווה מסלול לתפקוד שלה.
כעת, עלינו ליצור את הרשימה של רצף כקלט. רשימת קלט זו תחזיר את ה-tuple המורכב מתמורה ושילוב. אנחנו יכולים גם להגדיר את אורך התמורה והשילוב.
לכיתה מופשטת יכול להיות בנאי
תְמוּרָה
פרמוטציה היא הסדר של קבוצה שבה הסדר כן חשוב. מודול itertools של Python מספק מובנה תְמוּרָה() שיטה למצוא את התמורה. בואו נבין את הדוגמה הבאה.
דוגמא -
from itertools import permutations seq = permutations(['1','2','3']) print(seq) for p in list(seq): print(p)
תְפוּקָה:
('1', '2', '3') ('1', '3', '2') ('2', '1', '3') ('2', '3', '1') ('3', '1', '2') ('3', '2', '1')
בקוד לעיל, ייבאנו את מודול itertools. התקשרנו ל תְמוּרָה() שיטה שלוקחת מחרוזת כארגומנט ומספקת אובייקט itertools. יש צורך להשתמש בלולאה כדי לקבל את כל התמורה.
אופס מושג בג'אווה
ניקח שתי קבוצות של תמורות.
דוגמה - 2
from itertools import permutations seq = permutations(['A','B']) for p in list(seq): print(p)
תְפוּקָה:
מפה חוזרת ב-java
('A', 'B') ('A', 'C') ('B', 'C')
דוגמה - 3
from itertools import permutations list1 = [1, 2, 3, 4] seq = permutations(list1) print(seq) for p in list(seq): print(p)
תְפוּקָה:
(1, 2, 3, 4) (1, 2, 4, 3) (1, 3, 2, 4) (1, 3, 4, 2) (1, 4, 2, 3) (1, 4, 3, 2) (2, 1, 3, 4) (2, 1, 4, 3) (2, 3, 1, 4) (2, 3, 4, 1) (2, 4, 1, 3) (2, 4, 3, 1) (3, 1, 2, 4) (3, 1, 4, 2) (3, 2, 1, 4) (3, 2, 4, 1) (3, 4, 1, 2) (3, 4, 2, 1) (4, 1, 2, 3) (4, 1, 3, 2) (4, 2, 1, 3) (4, 2, 3, 1) (4, 3, 1, 2) (4, 3, 2, 1)
בקוד לעיל, יש לנו את השילוב של המספר השלם המרובה.
שינוי האורך הקבוע
אנו יכולים לחשב את התמורה של ערכת האורך הקבועה שבה ניקח רק מספר מוגדר של כל תמורה של אלמנט. בואו נבין את הדוגמה הבאה.
דוגמא -
from itertools import permutations seq = permutations(['H', 'e', 'l', 'l', 'o'], 3) for p in list(seq): print(p)
תְפוּקָה:
('H', 'e') ('H', 'l') ('H', 'l') ('H', 'o') ('e', 'H') ('e', 'l') ('e', 'l') ('e', 'o') ('l', 'H') ('l', 'e') ('l', 'l') ('l', 'o') ('l', 'H') ('l', 'e') ('l', 'l') ('l', 'o') ('o', 'H') ('o', 'e') ('o', 'l') ('o', 'l')
בקוד לעיל, חישבנו את התמורה הקבועה על ידי העברת אורך כשתיים.
סימון הערות שוליים
שילוב של מחרוזת
שילוב הוא אוסף של האלמנט שבו הסדר לא משנה. פִּיתוֹן itertools מודול מספק את קוֹמבִּינַצִיָה() שיטה לחישוב השילוב של נתונים נתונים. אנחנו יכולים לחשב את השילוב של מחרוזת. בואו נבין את הדוגמה הבאה.
דוגמא -
import itertools seq = 'ABC' com_seq = itertools.combinations(seq, 2) for c in com_seq: print(c)
תְפוּקָה:
('A', 'B') ('A', 'C') ('B', 'C')
שילוב עם החלפה
מודול itertools מורכב משיטה נוספת שנקראת שילוב_עם_החלפה() אשר לוקח בחשבון גם את השילוב של מספר עצמו. בואו נבין את הדוגמה שלו.
מערכי bash
שילוב של סט נומרי
from itertools import combinations_with_replacement com = combinations_with_replacement(['J', 'a', 'v', 'a', 't', 'p', 'o', 'i', 'n', 't'], 2) #Print the list of combinations for c in list(com): print(c)
תְפוּקָה:
('J', 'J') ('J', 'a') ('J', 'v') ('J', 'a') ('J', 't') ('J', 'p') ('J', 'o') ('J', 'i') ('J', 'n') ('J', 't') ('a', 'a') ('a', 'v') ('a', 'a') ('a', 't') ('a', 'p') ('a', 'o') ('a', 'i') ('a', 'n') ('a', 't') ('v', 'v') ('v', 'a') ('v', 't') ('v', 'p') ('v', 'o') ('v', 'i') ('v', 'n') ('v', 't') ('a', 'a') ('a', 't') ('a', 'p') ('a', 'o') ('a', 'i') ('a', 'n') ('a', 't') ('t', 't') ('t', 'p') ('t', 'o') ('t', 'i') ('t', 'n') ('t', 't') ('p', 'p') ('p', 'o') ('p', 'i') ('p', 'n') ('p', 't') ('o', 'o') ('o', 'i') ('o', 'n') ('o', 't') ('i', 'i') ('i', 'n') ('i', 't') ('n', 'n') ('n', 't') ('t', 't')
שילוב של סט נומרי
אם הקלט הנתון הוא בסדר הממוין, השילובים השילובים יוחזרו בסדר ממוין. בואו נבין את הדוגמה הבאה.
דוגמא -
import itertools v = [1, 2, 3, 4] com_seq = itertools.combinations_with_replacement(v, 3) for i in com_seq: print(i)
תְפוּקָה:
(1, 1, 1) (1, 1, 2) (1, 1, 3) (1, 1, 4) (1, 2, 2) (1, 2, 3) (1, 2, 4) (1, 3, 3) (1, 3, 4) (1, 4, 4) (2, 2, 2) (2, 2, 3) (2, 2, 4) (2, 3, 3) (2, 3, 4) (2, 4, 4) (3, 3, 3) (3, 3, 4) (3, 4, 4) (4, 4, 4)
במדריך זה, דנו במודול itertools כדי למצוא את התמורה והשילוב של הנתונים הנתונים באמצעות סקריפט Python.