وبلاگ رسانگار
با ما حرفه ای باشید

سرور مجازی NVMe

تبدیل لیست کاراکترها به رشته در پایتون

0 185
زمان لازم برای مطالعه: 2 دقیقه


فرض کنید لیستی از شخصیت های فردی دارید، مانند این:

chars = ('h', 'e', 'l', 'l', 'o', ' ', 'w', 'o', 'r', 'l', 'd')

اگر بخواهید این لیست از کاراکترها را به یک رشته تبدیل کنید چه؟ در چنین مواردی می توانید از join روش.

>>> chars = ('h', 'e', 'l', 'l', 'o', ' ', 'w', 'o', 'r', 'l', 'd')
>>> ''.join(chars)
'hello world'

توجه داشته باشید که join روش آثار روی رشته ای که می خواهید به عنوان جداکننده استفاده کنید، نه آرایه. این با زبان های دیگر متفاوت است، مانند جاوا اسکریپت که از آن استفاده می کند join روش روی آرایه به همین دلیل است که از call استفاده می کنیم join روی یک رشته خالی، ما در واقع نمی‌خواهیم کاراکترهای منفرد با چیزی از هم جدا شوند.

اگر می خواهید کاراکترها را با چیزی جدا کنید، و نه فقط یک رشته خالی، از آن کاراکتر به عنوان جداکننده استفاده کنید:

>>> chars = ('0', '1', '2', '3', '4')
>>> ','.join(chars)
'0,1,2,3,4'

اما اگر لیست کاراکترهای شما شامل اشیاء غیر رشته ای مانند اعداد صحیح باشد، چه؟ در این صورت پایتون یک خطا ایجاد می‌کند مگر اینکه صریحاً اعداد صحیح را به رشته تبدیل کنید.

>>> ','.join((1, 2, 3, 4))
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: sequence item 0: expected string, int found

اگر اعداد صحیح (یا انواع داده های دیگر) مانند این دارید، ابتدا آنها را به رشته تبدیل کنید. این را می توان در یک خط با استفاده از map تابعی که یک متد را فراخوانی می کند روی هر آیتم در لیست را برگردانید و آرایه اصلاح شده را برگردانید.

پیشنهاد می‌کنیم بخوانید:  جاوا اسکریپت: آخرین عنصر را در لیست دریافت کنید دریافت آخرین عنصر یک لیست/آرایه یک عملیات رایج است. در این آموزش، روش دریافت آخرین عنصر در آرایه/لیست جاوا اسکریپت را بررسی خواهیم کرد. جاوا اسکریپت یک زبان با تایپ ضعیف یا تایپ نشده است، به این معنی که نوع متغیر نیازی به اعلان ندارد...

در اینجا ابتدا نشان می دهیم که چگونه map عملکرد کار می کند:

>>> integers = (1, 2, 3, 4)
>>> map(str, integers)
('1', '2', '3', '4')

و در حال حاضر، قرار دادن همه آن را با join:

>>> integers = (1, 2, 3, 4)
>>> ','.join(map(str, integers))
'0,1,2,3,4'

به عنوان مثال دیگر، فرض کنید باید الگویی ایجاد کنید که دارای خطوط شماره گذاری شده برای چاپ برگه باشد. شما می توانید با استفاده از range، map، و join:

>>> numbers = range(1,11)
>>> ')\n'.join(map(str, numbers)) + ')'
'1)\n2)\n3)\n4)\n5)\n6)\n7)\n8)\n9)\n10)'

با فرمت صحیح، خروجی به شکل زیر خواهد بود:

1)
2)
3)
4)
5)
6)
7)
8)
9)
10)

(برچسب‌ها به ترجمه)# python



منتشر شده در 1403-01-05 07:10:04

امتیاز شما به این مطلب
دیدگاه شما در خصوص مطلب چیست ؟

آدرس ایمیل شما منتشر نخواهد شد.

لطفا دیدگاه خود را با احترام به دیدگاه های دیگران و با توجه به محتوای مطلب درج کنید