סט set
- eddiearb
- Mar 17, 2019
- 1 min read
סט set
אובייקט נוסף הקיים בפייתון לצורך ארגון מידע הוא set המסומן באמצעות סוגריים מסולסלים { } כאשר כל המידע המצוי בתוכו אינו כפוף לסדר מסוים ואין חשיבות למיקום בתוך הסט, לכן לא ניתן לבצע חיתוכים כמו ברשימה או לאתר מיקום של איבר בתוך הסט, כמו כן המחשב אינו מתייחס למספר הפעמים שאיבר מסוימים מופיע בסט, ומבחינתו האיבר קיים או לא קיים בלבד.
הפעולות השימושיות בסטים נוגעות לצורך במניעת כפילויות של פרטי מידע, לצורך לוודא קיום או אי קיום של פרט בלי קשר לכמויות וכן להשוואה בין שני סטים ואיתור איברים חופפים (או שאינם קיימים בסט אחר).
st={"a","b","c",1,2,3,"a","b",1,2,3,4,5} print(st)
>>>
{1, 'c', 2, 3, 4, 5, 'b', 'a'}
st={"a","b","c",1,2,3,"a","b",1,2,3,4,5} print(len(st))
>>>
8
אפשר לראות למעלה שהמחשב מחשיב כל איבר בסט פעם אחת בלבד למרות שכתבנו חלק מהאיברים בסט כמה פעמים. וכאשר מבקשים ממנו לספור את כמות האיברים בסט התשובה היא 8 משום שהוא בודק כמה פריטים ייחודיים ישנם ולא כמה סך הכל.
אפשר להוסיף ולהוציא פריטים מסוימים בתוך הסט –
st={"a","b","c",1,2,3} st.remove("b") # st.discard(b) אפשר גם st.add("e") print (st)
>>>
{1, 2, 3, 'e', 'c', 'a'}
אפשר לאתר חפיפה בין שני סטים –
st1={"a","b","c","d","e"} st2={"a","b",1,2,3,4} print(st1.intersection(st2))
>>>
{'b', 'a'}
אפשר למצוא חלקים בסט אחד שאינם מופיעים בסט השני -
st1={"a","b","c","d","e"} st2={"a","b",1,2,3,4} print(st1.difference(st2))
>>>
{'c', 'e', 'd'}
אפשר למצוא את האיחוד של כל הפריטים משני הסטים (בלי לקחת בחשבון פריט אחד פעמיים) -
set1={1,2,3,"banana",5,6,7}
set2={1,2,3}
print(set1.union(set2)) >>> {'banana', 1, 2, 3, 5, 6, 7}
על מנת לייצר סט ריק, לא ניתן להשתמש בסוגריים מסולסלים ריקים, זה מייצר מילון ריק,צריך להשתמש בפקודה ()a=set
Man, I remember that day like it was yesterday. It was one of those gloomy afternoons where the rain just wouldn't let up, and I was stuck at home with nothing but my laptop and a bad case of boredom. That's when I first stumbled upon this online casino thing, and before I knew it, I was trying the sky247 लॉगिन . में process just out of curiosity. I'd never been much of a gambler before – sure, I'd played cards with friends or bought a lottery ticket here and there, but nothing serious. This time, though, I was feeling a bit reckless after a rough week at work, where my boss had chewed me out over some minor mistake.…