Python ծրագիր՝ նիշերի զանգվածը տողի վերածելու համար
Python-ում մենք ունենք մի քանի ներկառուցված ֆունկցիաներ, ինչպիսիք են join(), map(), reduce() և len(), որոնք կարող են օգտագործվել նիշերի զանգվածը տողի վերածելու համար: Նիշերի զանգվածը սահմանվում է յուրաքանչյուր նիշը տողից կտրելու միջոցով: Python-ն ունի նախապես սահմանված մեթոդ join()՝ միացնելու բոլոր նիշերը տողը ստեղծելու համար: Ծրագիրը լուծելու մեկ այլ եղանակ է ցուցակի ըմբռնումը և join() մեթոդի օգտագործումը:
Բերենք օրինակ՝ հասկանալու համար նիշերի զանգվածի վերածումը տողի −
Նիշը «p», «e» և «n» է. տողը դառնում է գրիչ:
Նիշը «S», «A», «N», «D», «B», «O», «X». տողը դառնում է SANDBOX:
Շարահյուսություն
join()
Join()-ը Python-ում նախապես սահմանված մեթոդ է՝ միացնելու բոլոր նիշերը՝ տողը ձևավորելու համար:
len()
len()-ը Python-ում ներկառուցված մեթոդ է, որը կարող է օգտագործվել երկարության ընդհանուր թիվը որոշելու համար։
map()
Ֆունկցիան կարող է կիրառվել յուրաքանչյուր տարրի վրա կրկնվող (օրինակ՝ ցուցակի կամ tuple-ի) վրա՝ օգտագործելով Python's map() մեթոդը, որն այնուհետև արդյունքներով վերադարձնում է նոր կրկնվող:
reduce()
Սա Python-ում ներկառուցված գործառույթ է, որը հետևում է functools անունով մոդուլին և իրականացնում է որոշակի գործողություն տարրերի ցանկի վրա:
Օրինակ 1
Այս ծրագրում մենք կսկսենք ծրագիրը՝ պահպանելով մուտքային ցուցակի նիշերը arr_char փոփոխականում: Այնուհետև սկզբնավորեք «changer» փոփոխականը՝ տողը պահելու համար՝ սահմանելով դատարկ տողը join() մեթոդով, որը ստեղծում է տողի ձևավորումը։ Ի վերջո, տպեք արդյունքը:
arr_char=['T','u', 't', 'o', 'r','i', 'a', 'l','s', 'p', 'o', 'i', 'n', 't']
changer=''.join(arr_char)
print("The string is", changer)
Արդյունք
The string is Tutorialspoint
Օրինակ 2
Հետևյալ օրինակում մենք կսկսենք ծրագիրը՝ պահպանելով նիշերի զանգվածի մուտքային ցուցակը ‘ary_char’ փոփոխականում: Դարձրեք դատարկ տողի փոփոխականը ‘c_str’, որը հետագայում բոլոր նիշերը կպահի տողի մեջ: Այնուհետև օգտագործեք for օղակը՝ ‘ary_char’ փոփոխականը ‘char’ փոփոխականի մեջ կրկնելու համար՝ ամբողջ նիշը միասին ավելացնելու համար: Վերջապես տպեք փոփոխականը ‘c_str’ փոփոխականի օգնությամբ։
#convert character array into a string
ary_char = ['P','E','N','C','I','L']
c_str = ""
for char in ary_char:
c_str += char
print("The string is",c_str)
Արդյունք
The string is PENCIL
Օրինակ 3
Հետևյալ օրինակում այս կոդի while հանգույցը նիշերի զանգվածը վերածում է տողի։ Զանգվածի յուրաքանչյուր նիշը կրկնվում է, այնուհետև նիշը ավելացվում է սկզբնապես դատարկ տողի մեջ: Արդյունքի տողը տպվում է, երբ հանգույցն ավարտված է:
char_arr = ['B', 'l', 'a', 'c', 'k']
emp_str = ""
i = 0
while i < len(char_arr):
emp_str += char_arr[i]
i += 1
print(emp_str)
Արդյունք
Black
Օրինակ 4
Հետևյալ օրինակում քարտեզի ֆունկցիան և տողերի միացման մեթոդը օգտագործվում են այս կոդում՝ նիշերի զանգվածը տողի վերածելու համար: Այն նախ կառուցում է նիշերի զանգված, որից հետո str ֆունկցիան կիրառում է զանգվածի յուրաքանչյուր տարրի վրա՝ օգտագործելով քարտեզ ֆունկցիան։ Դրանից հետո տողերի կրկնվող բառն ուղարկվում է join մեթոդին, որը միացնում է բոլոր տողերը՝ ստեղծելով մեկ տող: Դրանից հետո ստացված տողը տպվում է:
char_arr = ['S', 'c', 'h', 'o', 'l','a','r']
my_str = ''.join(map(str, char_arr))
print("The array of character into string:", my_str)
Արդյունք
The array of character into string: Scholar
Օրինակ 5
pip install funtools
Տեղադրեք վերը նշված հրամանը ձեր Python համակարգում
Հետևյալ օրինակում այս կոդում սահմանված է char_to_str ֆունկցիան, որն ընդունում է նիշերի ցանկը որպես մուտքագրում և թողարկում տող։ Յուրաքանչյուր նիշ կավելացվի սկզբնական դատարկ տողի մեջ, որը կոչվում է emp_str, քանի որ ֆունկցիան կրկնվում է s ցուցակի տարրերի միջոցով: Այնուհետև այն դուրս է բերում տողը, որը միավորվել է նիշերի զանգվածից:
import functools
def char_to_str(s):
emp_str = ""
for x in s:
emp_str += x
return emp_str
arr_char = ['T', 'u', 't', 'o', 'r', 'i', 'a', 'l', 's', 'p', 'o', 'i', 'n','t']
print(char_to_str(arr_char))
Արդյունք
Tutorialspoint
Նկատի ունեցեք, որ Python-ի functools մոդուլն առաջարկում է գործիքներ այլ ֆունկցիաների, ինչպես նաև ավելի բարձր կարգի ֆունկցիաների հետ փոխազդելու համար: Ֆունկցիան, որը կարող է այլ ֆունկցիաներ ընդունել որպես արգումենտ կամ վերադարձնել դրանք որպես արդյունք, հայտնի են որպես ավելի բարձր կարգի ֆունկցիաներ։ Այս մոդուլն առաջարկում է մի քանի ֆունկցիաներ, ինչպիսիք են՝ reduce(), chache() և partal():
Օրինակ 6
Հետևյալ օրինակում սկսեք ծրագիրը ներմուծելով functools անունով մոդուլը, որն ապահովում է ներկառուցված կրճատում() անունով մեթոդը։ Այնուհետև սահմանեք char_to_str ֆունկցիա, որը մուտքագրում է s նիշերի ցուցակը և վերադարձնում տող: Ֆունկցիան կիրառում է lambda ֆունկցիան ձախից աջ ցուցակի յուրաքանչյուր տարրի վրա՝ օգտագործելով functiontools մոդուլի կրճատում() ֆունկցիան։ Լամբդա ֆունկցիան միացնում է երկու մուտքերը՝ x և y: Դրանով նիշերի ցանկը միավորվում է մեկ արժեքով, որը ներկայացնում է նիշերի ամբողջ ցանկը:
import functools
def char_to_str(s):
return functools.reduce(lambda x, y: x + y, s)
arr_char = ['T', 'u', 't', 'o', 'r', 'i', 'a', 'l', 's', 'p', 'o', 'i', 'n','t']
print(char_to_str(arr_char))
Արդյունք
Tutorialspoint
Եզրակացություն
Մենք հասկացանք երկու օրինակների միջև եղած տարբերությունը՝ նիշերի զանգվածը տողի վերածելով: Օրինակ 1-ում նախապես սահմանված join() մեթոդը օգտագործվում է բոլոր նիշերը միասին միացնելու համար, մինչդեռ օրինակ 2-ում for հանգույցն օգտագործվում է յուրաքանչյուր նիշ կրկնելու և տողը տպելու համար դատարկ փոփոխականի մեջ պահելու համար: