නිශ්චිත ලක්ෂ්යයකින් ආරම්භ වන තන්තුවක් ආපසු හරවන්නේ කෙසේදැයි ඔබ කවදා හෝ කල්පනා කර තිබේද?
නූල් දර්පණය පිළිතුරයි!
මෙම මූලික එහෙත් ඵලදායි ප්රවේශයට නියමිත ස්ථානයකින් ආරම්භ වන තන්තුවක අක්ෂර පෙරළීම ඇතුළත් වේ a ක්රමලේඛකයෙකුගේ ප්රසංගයේ පහසු මෙවලමකි.
Python භාවිතයෙන් තන්තුවක අක්ෂර පිළිබිඹු කරන ආකාරය ඉගෙන ගැනීම, ඔබ පළපුරුදු සංවර්ධකයෙකු හෝ ආරම්භ කළත්, ඔබේ කේතීකරණ හැකියාවන්ට පරිපූර්ණ එකතු කිරීමකි.
ඇත්තටම මොකක්ද string mirroring කියන්නේ?
තන්තු දර්පණය යනු තන්තුවක අක්ෂර ප්රතිවර්තනය කිරීම ඇතුළත් විනෝදජනක සහ ප්රයෝජනවත් ක්රමලේඛන ක්රමයකි. එය නිශ්චිත ස්ථානයකින් ආරම්භ විය හැකිය. මෙම අදහස දෙස සමීපව බලමු:
නූල් දර්පණය ක්රියා කරන්නේ නිශ්චිත දර්ශකයකින් ආරම්භ වන තන්තුවක අක්ෂර පෙරළීමෙනි.
මෙයින් ඇඟවෙන්නේ දර්ශකයට පෙර ඇති අක්ෂර ඒවායේ මුල් ස්ථානවල රැඳී සිටින අතර, දර්ශකයට පසුව ඇති අක්ෂර ආපසු හරවන බවයි. උදාහරණයක් ලෙස, අපි 5 වන දර්ශකයේ තන්තුවක් පිළිබිඹු කිරීමට පටන් ගන්නේ නම්, ඉතිරිය ආපසු හරවන විට පළමු අක්ෂර පහ ඒවායේ මුල් ස්ථානවල පවතී.
උදාහරණ: මේවා තන්තු දර්පණය පිළිබඳ නිදර්ශන කිහිපයකි:
"හෙලෝ වර්ල්ඩ්!" දර්ශකය 5 වෙතින් පිළිබිඹු කිරීමේ ප්රතිඵලය වනුයේ "Hello, dlroW!"
"I love Python" යන්න "I enoP tyloP" බවට පත් වනු ඇත, දර්ශකය 1 පිළිබිඹු කරන්නේ නම්.
ඔබට පෙනෙන පරිදි, මත පදනම්ව ආරම්භක දර්ශකය සහ ආදානය string, string පිළිබිඹු කිරීම සමහර කුතුහලය දනවන සහ අනපේක්ෂිත බලපෑම් ලබා දිය හැක.
තන්තුවක අක්ෂර පිළිබිඹු කිරීමට Python භාවිතා කරන්නේ කෙසේද
Python තන්තුවක ප්රතිලෝම අක්ෂර සරල කරයි. මෙන්න, ඔබ තෝරා ගන්නා n වැනි ලක්ෂ්යයෙන් ආරම්භ වන තන්තුවක් අනුකරණය කරන පයිතන් වැඩසටහනක් නිර්මාණය කරන්නේ කෙසේද යන්න අපි ඔබට ගෙන යන්නෙමු.
ශ්රිතයක් අර්ථ දක්වන්න
තන්තුවක් පිළිබිඹු කිරීම සඳහා, අපි පළමුව a අර්ථ දැක්විය යුතුය පයිතන් ශ්රිතය එය තර්ක දෙකක් පිළිගනී: පරාවර්තනය කළ යුතු තන්තුව සහ පරාවර්තනය ආරම්භ කළ යුතු n වැනි ස්ථානය.
def mirror_string(string, n):
නූල් පෙති කපන්න
n වන ස්ථානයට පෙර සහ පසු අක්ෂර වෙන් කිරීම සඳහා තන්තුව කපා දමනු ඇත. මේ සඳහා අපට පයිතන් හි ස්ලයිස් අංකනය භාවිතා කළ හැක.
left_half = string[:n]
right_half = string[n:]
දකුණු භාගය ආපසු හරවන්න
අපි තන්තුවේ දකුණු භාගය ආපසු හැරවීමට ගොඩනඟන ලද ප්රතිලෝම () ක්රමය භාවිතා කරන්නෙමු.
reversed_right_half = ''.join(reversed(right_half))
අර්ධ එකට එකතු කරන්න.
ඊළඟට, අපි දර්පණ නූල නිපදවීමට වම් භාගය සහ ප්රතිලෝම දකුණු භාගය එකට තබමු.
mirrored_string = left_half + reversed_right_half
return mirrored_string
වඩාත් සංකීර්ණ උදාහරණයක්
තන්තුවෙහි බොහෝ කොටස් විවිධ ස්ථානවලින් පිළිබිඹු වන වඩාත් සංකීර්ණ උදාහරණයක් මෙන්න:
def mirror_string(string, positions):
# Initialize an empty string to hold the mirrored string
mirrored_string = ""
# Initialize the starting index for each segment we want to mirror
start_index = 0
# Loop through each position in the list of positions we want to mirror
for position in positions:
# Get the end index for the current segment we want to mirror
end_index = position[0]
# Add the unmirrored part of the string to the mirrored string
mirrored_string += string[start_index:end_index]
# Update the starting index for the next segment to mirror
start_index = end_index
# If there's an ending index for the current segment, mirror the string
if position[1]:
# Get the ending index for the mirrored segment
mirror_end_index = position[1]
# Reverse the mirrored segment of the string and add it to the mirrored string
mirrored_string += ''.join(reversed(string[end_index:mirror_end_index]))
# Update the starting index for the next segment to mirror
start_index = mirror_end_index
# Add the remaining part of the string to the mirrored string
mirrored_string += string[start_index:]
# Return the final mirrored string
return mirrored_string
මෙම නව අනුවාදය අපට එය පිළිබිඹු කිරීමට අවශ්ය තන්තුවෙහි ලක්ෂ්ය ලැයිස්තුවක් මෙන්ම එක් එක් දර්පණ ඛණ්ඩය සඳහා විකල්ප අවසන් ස්ථානයක් පිළිගනී.
පහත දැක්වෙන පරිදි, තන්තුවක වෙනම කොටස් තුනක් පිළිබිඹු කිරීමට මෙම ක්රමය භාවිතා කළ හැක:
string = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse sagittis euismod velit sit amet semper."
positions = [(5, 10, 14), (22, 30), (43, 52, 60)]
print(mirror_string(string, positions))
මෙය මේ ආකාරයෙන් ප්රතිඵලයක් විය යුතුය:
Loremuspi m dolor sit oc ,temansectetur adie gnicsiplit. Suspendisse sagittis euismod velit sit amet semper.
සිද්ධි උදාහරණ භාවිතා කරන්න
තන්තු දර්පණය සරල ක්රමලේඛන අභ්යාසයක් ලෙස පෙනෙන්නට ඇත, නමුත් එය සැබෑ ලෝක තත්වයන් තුළ ඉතා වටිනා විය හැකිය. අප විසින් ලියන ලද තන්තු දර්පණ කේතය විවිධ අවස්ථා වලදී භාවිතා කළ හැකි ආකාරය පිළිබඳ උදාහරණ කිහිපයක් මෙන්න:
දත්ත සැකසීම
දත්ත සැකසුම් යෙදුම්වල පාඨයෙන් ප්රයෝජනවත් දත්ත ලබා ගැනීමට String mirroring භාවිතා කළ හැක. උදාහරණයක් ලෙස, අපට ප්රතිලෝම-ඇණවුම් කළ පෙළකින් නිෂ්පාදන කේතයක් උපුටා ගත හැක.
අපට තන්තුවෙහි අදාළ කොටස පහසුවෙන් ආපසු හරවා, නූල් දර්පණය භාවිතයෙන් නිෂ්පාදන කේතය නැවත ලබා ගත හැක.
ආරක්ෂක යෙදුම්
නොපැහැදිලි නූල් නිපදවීමට නූල් දර්පණය භාවිතා කළ හැක ආරක්ෂක යෙදුම්. උදාහරණයක් ලෙස, අපට පෙනෙන පරිදි තේරුමක් නැති තන්තුවක මුරපදයක් හෝ රහස් පණිවිඩයක් සැඟවීමට අවශ්ය විය හැකිය.
තේරුම් ගැනීමට අපහසු තන්තුවේ අපැහැදිලි අනුවාදයක් තැනීමට අපි තන්තු දර්පණය භාවිතා කළ හැකිය.
පෙළ විශ්ලේෂණය
පෙළ විශ්ලේෂණ යෙදුම්වල පෙළෙහි රටා සොයා ගැනීමට තන්තු දර්පණය භාවිතා කළ හැක. නිදසුනක් වශයෙන්, අපට විශාල සාහිත්ය සංග්රහයක් හරහා පාලින්ඩ්රෝම් යන යෙදුම් හෝ එකම ඉදිරියට සහ පසුපසට කියවන වචන සඳහා සෙවීමට අවශ්ය විය හැකිය.
වචනයක් පරාවර්තනය කිරීමෙන් සහ එය මුල් පිටපතට සංසන්දනය කිරීමෙන් string mirroring භාවිතා කිරීමෙන් අපට සරලව පරීක්ෂා කළ හැකිය.
අවසන් කරන්න
අවසානයේ දී, දී ඇති ස්ථානයකින් ආරම්භ වන තන්තුවක අක්ෂර ප්රතිවර්තනය කිරීම සඳහා තන්තු දර්පණය ප්රයෝජනවත් ක්රමලේඛන තාක්ෂණයකි. භාවිතා කරන්නේ කෙසේදැයි ඔබට ඉගෙන ගත හැකිය පයිතන් සිට දර්පණ නූල් සහ මෙම ලිපියේ සපයා ඇති ක්රියා පටිපාටි අනුගමනය කිරීමෙන් පෙළෙහි දර්පණ අනුවාද නිෂ්පාදනය කරන්න.
මෙම කුසලතාව ඔබට ඔබගේ කේතීකරණය වැඩිදියුණු කිරීමට සහ ඔබගේ යෙදුම් වඩාත් අනුවර්තනය කිරීමට උපකාරී වේ.
තන්තු දර්පණය දත්ත සංකේතනය සහ ආරක්ෂාව සඳහා භාවිතා කිරීමට හැකියාව ඇත. ඔබට අකුරු වැලක් පරාවර්තනය කිරීමෙන් සංවේදී දත්ත සංකේතනය කිරීමට භාවිතා කළ හැකි ගුප්ත ලේඛනමය වශයෙන් ආරක්ෂිත යතුරක් සෑදිය හැක.
නිදසුනක් ලෙස, අක්ෂර 16ක මුරපදයක් පිළිබිඹු කිරීමෙන්, ඔබට බිඳීමට වඩා සැලකිය යුතු ලෙස අපහසු වන අක්ෂර 32ක යතුරක් ජනනය කළ හැක.
දත්ත සම්පීඩන ක්රමවලදී ද නූල් දර්පණය භාවිතා කළ හැක. තන්තු වල රටා හඳුනාගෙන පරාවර්තනය කිරීමෙන්, සම්පීඩිත දත්ත මුල් දත්තවලට වඩා බෙහෙවින් අඩු විය හැකිය. මෙය වේගවත් දත්ත හුවමාරුවකට සහ ගබඩා අවශ්යතා අඩුවීමට හේතු විය හැක.
ඔබමයි