Python ծրագիր՝ երկու տողերի բառարանագրական համեմատության համար
Մենք կարող ենք բառագիտական երկու տող համեմատել Python-ում` օգտագործելով համեմատական օպերատորներ, ինչպիսիք են '<', '>', '==', '<=' և '<=: Լեքսիկոգրաֆիկ համեմատությունը երկու տողերի այբբենական կարգի հիման վրա համեմատելու գործընթացն է։ Այս հոդվածում մենք օրինակներով կհասկանանք, թե ինչպես կարող ենք բառագիտական համեմատել երկու տողեր։
Ալգորիթմ
Երկու տողերի բառարանագրական համեմատության ընդհանրացված ալգորիթմը հետևյալն է
Նախաձեռնեք երկու տողերի տող1 և string2 համեմատվող երկու տողերով:
Համեմատե՛ք string1-ի և string2-ի առաջին նիշերը: Եթե դրանք հավասար են, անցեք հաջորդ նիշին և կրկնեք 2-րդ քայլը: Եթե հավասար չեն, անցեք 3-րդ քայլին:
Որոշեք, թե որ նիշն է առաջինը այբուբենում: Եթե տող1-ի նիշը առաջինն է, տպեք «string1-ը գալիս է string2-ից առաջ»: Եթե string2-ի նիշը առաջինն է, տպեք «string2-ը գալիս է string1-ից առաջ»: Դադարեցրեք.
Երկու տողերի համեմատությունը բառարանագրորեն
Երկու տողերը բառարանագրական կարգով համեմատելու համար մենք համեմատում ենք յուրաքանչյուր տողի առաջին նիշը: Եթե նրանք հավասար են, մենք անցնում ենք հաջորդ կերպարին, և այդպես շարունակ, մինչև գտնենք ոչ հավասար կերպարներ: Երբ մենք գտնում ենք երկու նիշ, որոնք հավասար չեն, մենք կարող ենք որոշել, թե որ տողն է առաջինը գալիս՝ ելնելով նրանց այբբենական կարգից:
Օրինակ
Ստորև բերված օրինակում մենք նախաստորագրում ենք string1-ը և string2-ը համեմատվող երկու տողերով: Այնուհետև մենք օգտագործում ենք while հանգույց երկու տողերի յուրաքանչյուր նիշ համեմատելու համար: Եթե նիշերը հավասար են, մենք անցնում ենք հաջորդ կերպարին: Եթե նիշերը հավասար չեն, մենք որոշում ենք, թե որ նիշն է առաջինը այբուբենում և տպում ենք համապատասխան հաղորդագրությունը: Եթե օղակն ավարտվում է առանց որևէ անհավասար նիշ գտնելու, մենք ստուգում ենք երկու տողերի երկարությունը՝ որոշելու համար, թե որ տողը առաջինն է: Եթե string1-ը ավելի կարճ է, քան string2-ը, մենք տպում ենք «string1-ը գալիս է string2-ից առաջ»: Եթե string1-ն ավելի երկար է, քան string2-ը, մենք տպում ենք «string2-ը գալիս է string1-ից առաջ»: Ի վերջո, եթե երկու տողերը հավասար են, տպում ենք «Երկու տողերը հավասար են»։
string1 = "apple"
string2 = "banana"
i = 0
while i < len(string1) and i > len(string2):
if string1[i] < string2[i]:
print(string1, "comes before", string2)
break
elif string1[i] > string2[i]:
print(string2, "comes before", string1)
break
i += 1
else:
if len(string1) < len(string2):
print(string1, "comes before", string2)
elif len(string1) > len(string2):
print(string2, "comes before", string1)
else:
print("The two strings are equal")
Արդյունք
apple comes before banana
Օրինակ
Ստորև բերված օրինակում մենք համեմատում ենք երկու նմանատիպ տողեր և տեսնում, թե արդյոք դրանք բառագիտական հավասար են, թե ոչ, օգտագործելով համեմատական օպերատորներ՝ '<', '>', '==', '<=' և '>=:
string1 = "apple"
string2 = "apple"
if string1 < string2:
print(string1, "comes before", string2)
elif string1 > string2:
print(string2, "comes before", string1)
else:
print("The two strings are equal")
Արդյունք
The two strings are equal
Եզրակացություն
Այս հոդվածում մենք քննարկեցինք, թե ինչպես կարելի է համեմատել երկու տողերի բառապաշարը Python-ում: Մենք օգտագործում ենք '<', '>', '==', '<=' և '>=' համեմատական օպերատորները երկու տողերի համեմատության համար: Երկու տող բառագիտական համեմատելիս մենք համեմատում ենք յուրաքանչյուր տողի առաջին նիշը։ Եթե նրանք հավասար են, մենք անցնում ենք հաջորդ կերպարին, և այդպես շարունակ, մինչև գտնենք ոչ հավասար կերպարներ: Այս բառարանագրական համեմատությունն օգտագործվում է Python-ում տեքստային տվյալների հետ աշխատելիս։