ווטסאפ - לינוקס, BSD, קוד פתוח ותוכנה חופשית בעברית. Whatsup - Linux, BSD, open source and free software in Hebrew

 
 
  כניסת חברים · רישום · שכחתי סיסמה  
tux the penguin
תגובה לנושא
צפיה בנושא הבא Printable version התחבר כדי לבדוק הודעות פרטיות צפיה בנושא הקודם
אורח · ·
 

הודעה פורסם: 05/12/2017 - 18:19
נושא ההודעה: פייתון: איך מגדירים משתנה שאמור לאחסן מילה בגדול משתנה?

אני צריך להגדיר משתנה שיכיל מילה - אוסף של תווים בעברית - בגודל משתנה.
צריך גם לעשות פעולות על המילה הזו: להוסיף/להוריד תווים וכו
אני מבין ש: Strings Are Immutable , כלומר זה לא מתאים לנתון משתנה
גם List לא נראה מתאים - יותר מתאים לאוסף של מילים.
אשמח לעזרה!
 
   
תגובה  עם ציטוט חזרה למעלה
חזרה לתוכן הדיון
אורח · ·
 

הודעה פורסם: 05/12/2017 - 18:28
נושא ההודעה:

זה ש-Strings Are Immutable רק אומר שכשאתה עושה פעולה נוצר String חדש לא שהמשתנה חייב להצביע על אותו String לעולם ועד.
 
   
תגובה  עם ציטוט חזרה למעלה
חזרה לתוכן הדיון
moshe2goלא בפורום כעת ת.הצטרפות: 24/04/2013 · הודעות: 485 ·
 

הודעה פורסם: 05/12/2017 - 18:52
נושא ההודעה:

ציטוט:
זה ש-Strings Are Immutable רק אומר שכשאתה עושה פעולה נוצר String חדש לא שהמשתנה חייב להצביע על אותו String לעולם ועד

ואני יכול להוסיף לו אותיות בסוף המילה או בהתחלה, למחוק או להחליף?

_________________
"אם אין קוטג' תאכלו מילקי" – אמרה המלכה טרם הואצה הגיליוטינה בקצב 9.8 מטר לשניה בריבועעעעעעעעע
You can take our sweet homes, even our cloths"
!But don't touch the streets, Ah, That's NO
"...The streets are our @world's compilable kernel
 
 צפיה בפרופיל המשתמש שלח הודעה פרטית ביקור באתר המפרסם  
תגובה  עם ציטוט חזרה למעלה
חזרה לתוכן הדיון
mksoftלא בפורום כעתSite Admin ת.הצטרפות: 17/03/2002 · הודעות: 10514 · מיקום: כדור הארץ
 

הודעה פורסם: 05/12/2017 - 19:19
נושא ההודעה:

כשאתה עושה את זה, נוצרת מחרוזת חדשה, כמובן שאין בעיה להציב אותה שוב במשתנה המקורי:

קוד:
>>> s = 'hello'
>>> id(s)
139960134669232
>>> s += 'world'
>>> id(s)
139960134673072
>>> print(s)
helloworld


כמו שאתה רואה, ה-id שונה (מחרוזת אחרת), אך עדיין באותו משתנה.

_________________
הבלוג שלי
 
 צפיה בפרופיל המשתמש שלח הודעה פרטית שלח דוא\ ביקור באתר המפרסם  
תגובה  עם ציטוט חזרה למעלה
חזרה לתוכן הדיון
moshe2goלא בפורום כעת ת.הצטרפות: 24/04/2013 · הודעות: 485 ·
 

הודעה פורסם: 05/12/2017 - 19:42
נושא ההודעה:

הבנתי וזה יכול להתאים. ואני גם יכול לפנות לתוו מסוים במילה עם: s[i] ואולי ניתן למחוק תוו עם הפקודה הזו - איך?
אבל במחשבה שניה אפשר ליצור מערך חד מימדי > range של תווים ועליו לבצע מה שרוצים. זה בעצם אותו דבר...
תודה

_________________
"אם אין קוטג' תאכלו מילקי" – אמרה המלכה טרם הואצה הגיליוטינה בקצב 9.8 מטר לשניה בריבועעעעעעעעע
You can take our sweet homes, even our cloths"
!But don't touch the streets, Ah, That's NO
"...The streets are our @world's compilable kernel
 
 צפיה בפרופיל המשתמש שלח הודעה פרטית ביקור באתר המפרסם  
תגובה  עם ציטוט חזרה למעלה
חזרה לתוכן הדיון
moshe2goלא בפורום כעת ת.הצטרפות: 24/04/2013 · הודעות: 485 ·
 

הודעה פורסם: 06/12/2017 - 15:47
נושא ההודעה:

ציטוט:
כשאתה עושה את זה, נוצרת מחרוזת חדשה, כמובן שאין בעיה להציב אותה שוב במשתנה המקורי:

הבנתי שניתן לחבר מחרוזות, אבל כעת אני צריך למחוק תוו (אות) אחרונה במילה -
אני יודע למקם את התוו, כלומר היכן הוא נמצא מתחילת המילה - זה אפשרי בשיטה הזו או שדרושה דרך אחרת?
הביטוי הבא אינו עובד:
קוד:

s = s - s[i]

_________________
"אם אין קוטג' תאכלו מילקי" – אמרה המלכה טרם הואצה הגיליוטינה בקצב 9.8 מטר לשניה בריבועעעעעעעעע
You can take our sweet homes, even our cloths"
!But don't touch the streets, Ah, That's NO
"...The streets are our @world's compilable kernel
 
 צפיה בפרופיל המשתמש שלח הודעה פרטית ביקור באתר המפרסם  
תגובה  עם ציטוט חזרה למעלה
חזרה לתוכן הדיון
mksoftלא בפורום כעתSite Admin ת.הצטרפות: 17/03/2002 · הודעות: 10514 · מיקום: כדור הארץ
 

הודעה פורסם: 06/12/2017 - 16:04
נושא ההודעה:

string תומך ב-slice:
קוד:
a = a[:-1]


כדאי לקרוא בתיעוד:
https://docs.python.org/3.6/tutorial/introduction.html#strings

_________________
הבלוג שלי
 
 צפיה בפרופיל המשתמש שלח הודעה פרטית שלח דוא\ ביקור באתר המפרסם  
תגובה  עם ציטוט חזרה למעלה
חזרה לתוכן הדיון
moshe2goלא בפורום כעת ת.הצטרפות: 24/04/2013 · הודעות: 485 ·
 

הודעה פורסם: 06/12/2017 - 17:59
נושא ההודעה:

קוד:
a = a[:-1]

זה עובד
תודה

_________________
"אם אין קוטג' תאכלו מילקי" – אמרה המלכה טרם הואצה הגיליוטינה בקצב 9.8 מטר לשניה בריבועעעעעעעעע
You can take our sweet homes, even our cloths"
!But don't touch the streets, Ah, That's NO
"...The streets are our @world's compilable kernel
 
 צפיה בפרופיל המשתמש שלח הודעה פרטית ביקור באתר המפרסם  
תגובה  עם ציטוט חזרה למעלה
חזרה לתוכן הדיון
mksoftלא בפורום כעתSite Admin ת.הצטרפות: 17/03/2002 · הודעות: 10514 · מיקום: כדור הארץ
 

הודעה פורסם: 07/12/2017 - 09:45
נושא ההודעה:

כמובן שזה עובד, אך חשוב יותר להבין איך זה עובד Smile

_________________
הבלוג שלי
 
 צפיה בפרופיל המשתמש שלח הודעה פרטית שלח דוא\ ביקור באתר המפרסם  
תגובה  עם ציטוט חזרה למעלה
חזרה לתוכן הדיון
moshe2goלא בפורום כעת ת.הצטרפות: 24/04/2013 · הודעות: 485 ·
 

הודעה פורסם: 07/12/2017 - 12:07
נושא ההודעה:

ציטוט:
כמובן שזה עובד, אך חשוב יותר להבין איך זה עובד Smile

אצלי שום דבר לא מובן מאליו.. בטח שלא בעניני תוכנה שחדשים לי Wink

אם הבנתי נכון אז לפי התיעוד ולפי הסברכם כאן: מכיוון ש Strings Are Immutable כלומר לא ניתן לשינוי, אז צריך ליצור string חדש. וכמובן להשתמש ב syntax המתאים...
דרך אגב: זה רק בפייתון ככה שלא ניתן לשנות string? מענין מדוע?

_________________
"אם אין קוטג' תאכלו מילקי" – אמרה המלכה טרם הואצה הגיליוטינה בקצב 9.8 מטר לשניה בריבועעעעעעעעע
You can take our sweet homes, even our cloths"
!But don't touch the streets, Ah, That's NO
"...The streets are our @world's compilable kernel
 
 צפיה בפרופיל המשתמש שלח הודעה פרטית ביקור באתר המפרסם  
תגובה  עם ציטוט חזרה למעלה
חזרה לתוכן הדיון
mksoftלא בפורום כעתSite Admin ת.הצטרפות: 17/03/2002 · הודעות: 10514 · מיקום: כדור הארץ
 

הודעה פורסם: 07/12/2017 - 13:47
נושא ההודעה:

ה-slice מטפל בהחזרת מחרוזץ ללא התו האחרון, נתתי לך קישור לתיעוד שמדבר על זה.

יש גם שפות אחרות בהן מחרוזות אינן ניתנות לשינוי (לדוגמא: כדי שיהיה ניתן להשתמש בהן ב-hashmap, כלומר dict), ביניהן Go, Erlang/Elixir, ג'אווה, C#, ג'אווהסקריפט.

_________________
הבלוג שלי

נערך לאחרונה על-ידי mksoft בתאריך 07/12/2017 - 14:54, סך-הכל נערך פעם אחת
 
 צפיה בפרופיל המשתמש שלח הודעה פרטית שלח דוא\ ביקור באתר המפרסם  
תגובה  עם ציטוט חזרה למעלה
חזרה לתוכן הדיון
moshe2goלא בפורום כעת ת.הצטרפות: 24/04/2013 · הודעות: 485 ·
 

הודעה פורסם: 07/12/2017 - 14:27
נושא ההודעה:

ציטוט:
ה-slice מטפל בהחזרת מחרוזץ ללא התו האחרון, נתתי לך קישור לתיעוד שמדבר על זה.

את זה הבנתי וכבר בצעתי "ברית מילה" למילה

מחרוזות: חשבתי שיש איזו מגבלה טכנית אבל ההסבר שלך הוא בכיוון שימוש של ישומים אחרים

תודה

_________________
"אם אין קוטג' תאכלו מילקי" – אמרה המלכה טרם הואצה הגיליוטינה בקצב 9.8 מטר לשניה בריבועעעעעעעעע
You can take our sweet homes, even our cloths"
!But don't touch the streets, Ah, That's NO
"...The streets are our @world's compilable kernel
 
 צפיה בפרופיל המשתמש שלח הודעה פרטית ביקור באתר המפרסם  
תגובה  עם ציטוט חזרה למעלה
חזרה לתוכן הדיון
mksoftלא בפורום כעתSite Admin ת.הצטרפות: 17/03/2002 · הודעות: 10514 · מיקום: כדור הארץ
 

הודעה פורסם: 07/12/2017 - 14:54
נושא ההודעה:

לקריאה נוספת בנושא:
https://en.wikipedia.org/wiki/Immutable_object#Language-specific_details

_________________
הבלוג שלי
 
 צפיה בפרופיל המשתמש שלח הודעה פרטית שלח דוא\ ביקור באתר המפרסם  
תגובה  עם ציטוט חזרה למעלה
חזרה לתוכן הדיון
האחראורח · ·
 

הודעה פורסם: 07/12/2017 - 16:37
נושא ההודעה:

כל העניין הזה של Immutable עשה לי כואב ראש.
בשביל מה זה טוב? performance ? מה זה החארטא הזה?

אני התייאשתי מפיתון :
קוד:
% python
Python 3.6.3 (default, Oct 24 2017, 14:48:20)
[GCC 7.2.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> id('bla')
140282109201800
>>> a='bla' ; id(a)
140282109201800
>>> b='bla' ; id(b)
140282109201800
>>> a='bla1';b=a;
>>> id(a)
140282109201912
>>> id('bla')
140282109201800
>>> import gc
>>> gc.collect()
0
>>> id('bla')
140282109262960
>>>
>>>
 
   
תגובה  עם ציטוט חזרה למעלה
חזרה לתוכן הדיון
הצגת הודעות מלפני:     
מעבר אל:  
כל הזמנים הם GMT + 2 שעות
תגובה לנושא
צפיה בנושא הבא Printable version התחבר כדי לבדוק הודעות פרטיות צפיה בנושא הקודם
PNphpBB2 © 2003-2004 

תוכן הדיון

  1. אורח
  2. אורח
  3. moshe2go
  4. mksoft
  5. moshe2go
  6. moshe2go
  7. mksoft
  8. moshe2go
  9. mksoft
  10. moshe2go
  11. mksoft
  12. moshe2go
  13. mksoft
  14. אורח [האחר]