String Concatenation के Efficient Methods
String Variable में String Append करने का Best तरीका + या += का उपयोग करना है। ऐसा इसलिए क्योंकि यह Readable और Fast है। वे उतने ही Fast हैं। इसके अलावा, यदि आप 2 Strings के साथ काम कर रहे हैं, तो append() का भी उपयोग किया जा सकता है।
यदि आप Strings की List Concatenate कर रहे हैं, तो Preferred तरीका join() का उपयोग करना है क्योंकि यह Strings की List Accept करता है और उन्हें Concatenate करता है और इस Case में सबसे Readable होता है।
यदि आप Performance देख रहे हैं, तो append/join वहां Marginally Faster है यदि आप Extremely Long Strings उपयोग कर रहे हैं।
Performance Comparison:
import timeit
# Method 1: + Operator
timeit.timeit('s = ""; s += "a"; s += "b"; s += "c"', number=100000)
# ~0.03 seconds
# Method 2: join() - List के लिए Best
timeit.timeit('"".join(["a", "b", "c"])', number=100000)
# ~0.015 seconds
# Method 3: List Append + Join (Loop में Building के लिए)
timeit.timeit('l=[]; l.append("a"); l.append("b"); l.append("c"); "".join(l)', number=100000)
# ~0.025 seconds
# Method 4: f-strings (Python 3.6+)
timeit.timeit('f"{a}{b}{c}"', setup='a="a"; b="b"; c="c"', number=100000)
# ~0.02 seconds
Guidelines:
| Scenario | Recommended Method |
|---|---|
| 2-3 Strings Concatenate | + या f-strings |
| Loop में Strings Build करना | List Append + join() |
| List/Tuple of Strings | join() |
| String Formatting | f-strings या .format() |
Anti-pattern (Avoid करें):
# Bad - Quadratic Time Complexity
s = ""
for i in range(10000):
s += str(i) # हर बार New String बनाता है
# Good - Linear Time
parts = []
for i in range(10000):
parts.append(str(i))
s = "".join(parts)