रुपेश पवार
IT Professional 5+ वर्षांचा अनुभव
प्रकाशित
19 July २०२६
वाचण्याचा वेळ
12 मिनिटे
स्तर
Beginner
Python शिकणाऱ्या प्रत्येक व्यक्तीला लवकर किंवा उशिरा String (स्ट्रिंग) या डेटा टाईपचा सामना करावाच लागतो. Python मध्ये String हा सर्वात जास्त वापरला जाणारा डेटा टाईप आहे, कारण text handling, user input, file names, messages, हे सगळं String च्या स्वरूपातच असतं. या ब्लॉग पोस्टमध्ये आपण Python String म्हणजे नेमकं काय, तो कसा तयार करायचा, त्यावर कोणकोणते operations करता येतात आणि सर्वात जास्त वापरले जाणारे String Methods कोणते, हे सगळं सोप्या मराठी भाषेत, प्रॅक्टिकल उदाहरणांसह समजून घेणार आहोत.
Python String म्हणजे काय? (What is a String in Python)
थोडक्यात उत्तर: Python String म्हणजे quotes मध्ये लिहिलेल्या characters ची एक sequence (क्रम). यामध्ये letters, numbers, symbols आणि spaces यांचा समावेश असू शकतो.
Python मध्ये वेगळा असा character data type नसतो म्हणजे एका character ला सुद्धा length-1 चा String मानलं जातं. उदाहरणार्थ "A" हे सुद्धा एक String आहे आणि "Amit" हे सुद्धा एक String आहे.
String चा वापर प्रामुख्याने text handling आणि string manipulation साठी केला जातो, जसं की नावं साठवणं, user कडून input घेणं, किंवा एखादा message तयार करणं.
Python मध्ये String कसे तयार करावे? (Creating a String)
Python मध्ये String तयार करण्यासाठी single quotes ('...') किंवा double quotes ("...") दोन्हीपैकी कोणतेही वापरता येतात, आणि दोन्हींचं वर्तन (behavior) सारखंच असतं.
a = 'GFG' b = "GeeksForGeeks" print(a) print(b)
GFG GeeksForGeeks
Multi-line Strings कसे तयार करावे
जेव्हा तुम्हाला एकापेक्षा जास्त ओळींचा (multiple lines) मजकूर एका String मध्ये साठवायचा असतो, तेव्हा triple quotes ('''...''' किंवा """...""") वापरले जातात. यामध्ये newlines जसेच्या तसे राहतात.
s = """मी Python GeeksforGeeks वर शिकत आहे""" print(s)
हे विशेषतः paragraphs, docstrings किंवा multi-line messages लिहिताना उपयोगी पडतं.
String मधील Characters कसे access करावे (Indexing)
Python मधील String ही एक indexed sequence असते. प्रत्येक character ला एक specific position (index) असते.
- Positive Indexing: डावीकडून सुरुवात होते, आणि पहिल्या character चा index
0असतो. - Negative Indexing: उजवीकडून सुरुवात होते, आणि शेवटच्या character चा index
-1असतो.
s = "ABCDEF" print(s[0]) # A print(s[4]) # E print(s[-3]) # D print(s[-5]) # B
लक्षात ठेवा: जर तुम्ही String च्या range बाहेरचा index वापरला, तर Python IndexError देतं. तसंच index फक्त integer असावा लागतो, अन्यथा TypeError येतो.
String Slicing म्हणजे काय?
String Slicing ही एक अशी पद्धत आहे ज्याद्वारे तुम्ही String मधून specific भाग (portion) काढू शकता. यासाठी syntax असा असतो:
string[start:end]
इथे start म्हणजे सुरुवातीचा index आणि end म्हणजे शेवटचा index (जो निकालामध्ये समाविष्ट नसतो).
s = "ABCDEF" print(s[1:4]) # BCD print(s[:3]) # ABC print(s[3:]) # DEF print(s[::-1]) # FEDCBA (String उलटी करण्यासाठी)
s[::-1] हा trick String reverse करण्यासाठी खूप प्रसिद्ध आहे आणि Python interviews मध्ये हमखास विचारला जातो.
Loop द्वारे String मधील प्रत्येक Character वाचणे
Python मध्ये String ही iterable असते, म्हणजे for loop वापरून तुम्ही तिच्यातील प्रत्येक character एक-एक करून मिळवू शकता.
s = "ABCDEF" for char in s: print(char)
हा loop String मधून क्रमाने (in order) प्रत्येक character घेतो आणि प्रत्येक iteration मध्ये पुढचा character print करतो.
String Immutability म्हणजे काय? (String Immutability in Python)
Python मधील सर्वात महत्त्वाचा concept म्हणजे String Immutability. याचा अर्थ असा की एकदा String तयार झाल्यावर त्याची value थेट बदलता येत नाही. जर तुम्हाला बदल करायचा असेल, तर त्यासाठी एक नवीन String तयार होतं, मूळ String कधीच बदलत नाही.
s = "aBCDEF" s = "A" + s[1:] print(s) # ABCDEF
इथे मूळचं "aBCDEF" हे String बदललं गेलेलं नाही; उलट "A" आणि s[1:] एकत्र करून एक नवीन String तयार करण्यात आलं आहे आणि ते s या variable ला परत assign केलं आहे.
String Delete कसे करावे
String मधील एखादा character काढता येत नाही (कारण String immutable आहे), पण संपूर्ण variable del keyword वापरून delete करता येतो.
s = "ABC" del s
Delete केल्यानंतर तो variable परत access करण्याचा प्रयत्न केल्यास Python NameError देतं, कारण तो variable memory मध्ये अस्तित्वातच नसतो.
String Update कसे करावे
String थेट बदलता येत नसल्यामुळे, update करण्यासाठी slicing किंवा replace() सारखे methods वापरले जातात.
s = "ABCD EF"
s1 = "H" + s[1:]
s2 = s.replace("ABC", "abc")
print(s1) # HBCD EF
print(s2) # abcD EFPython मधील सर्वात जास्त वापरले जाणारे String Methods
Python मध्ये String manipulation साठी अनेक built-in methods दिलेले आहेत. यातील काही सर्वात उपयोगी methods खाली दिले आहेत:
1. len() — String ची लांबी मोजण्यासाठी
len() हे function String मधील एकूण characters (spaces आणि punctuation सह) मोजतं.
s = "GeeksforGeeks" print(len(s)) # 13
2. upper() आणि lower() — Case बदलण्यासाठी
upper() सर्व characters capital मध्ये आणि lower() सर्व characters small मध्ये convert करतं.
s = "Hello World" print(s.upper()) # HELLO WORLD print(s.lower()) # hello world
3. strip() आणि replace() — Whitespace काढणे आणि Text बदलणे
strip() String च्या सुरुवातीचे आणि शेवटचे extra spaces काढून टाकतं, तर replace() एखादा specific भाग दुसऱ्या text ने बदलतं.
s = " ABC "
print(s.strip()) # ABC
s = "Python is fun"
print(s.replace("fun", "awesome")) # Python is awesomeString Concatenation आणि Repetition
Concatenation (जोडणे): दोन किंवा जास्त Strings एकत्र जोडण्यासाठी + operator वापरला जातो.
s1 = "Hello" s2 = "World" print(s1 + " " + s2) # Hello World
Repetition (पुनरावृत्ती): एखादं String ठराविक वेळा repeat करण्यासाठी * operator वापरला जातो.
s = "Hello " print(s * 3) # Hello Hello Hello
String Formatting कसे करावे (f-strings आणि format())
Real-world applications मध्ये variables String च्या आत insert करणं खूप गरजेचं असतं. यासाठी Python मध्ये दोन लोकप्रिय पद्धती आहेत:
1. f-strings (सर्वात modern आणि वेगवान पद्धत)
name = "जेक"
age = 22
print(f"नाव: {name}, वय: {age}")f-strings मुळे variables आणि expressions थेट {} मध्ये टाकून String मध्ये insert करता येतात — यामुळे code readable आणि clean राहतो.
2. format() method
s = "माझं नाव {} आहे आणि माझं वय {} वर्षे आहे.".format("इमिली", 22)
print(s)String Membership Testing (in Keyword)
एखादा substring दुसऱ्या String मध्ये आहे की नाही, हे तपासण्यासाठी in keyword वापरला जातो. हे True किंवा False परत करतं.
s = "GeeksforGeeks"
print("Geeks" in s) # True
print("GfG" in s) # Falseवारंवार विचारले जाणारे प्रश्न (FAQ) — Python String
Q1. Python मध्ये String Mutable आहे की Immutable?
Ans: Python मधील String हे Immutable असतं, म्हणजे एकदा तयार झाल्यावर त्याची value थेट बदलता येत नाही. कोणताही बदल केल्यास नवीन String तयार होतं.
Q2. Python String आणि Character यात फरक काय?
Ans: Python मध्ये वेगळा Character data type नसतो. एका character लाही length-1 चं String मानलं जातं.
Q3. String Slicing मध्ये negative index कसा वापरतात?
Ans: Negative index उजवीकडून मोजला जातो — शेवटच्या character चा index -1 असतो. उदा. s[-1] म्हणजे शेवटचा character.
Q4. f-string आणि format() यात कोणतं जास्त चांगलं आहे?
Ans: f-strings ही जास्त readable आणि performance-वाईज वेगवान पद्धत आहे, त्यामुळे नवीन Python code मध्ये f-strings ला जास्त प्राधान्य दिलं जातं.


