امتیاز موضوع:
  • 2 رأی - میانگین امتیازات: 4.5
  • 1
  • 2
  • 3
  • 4
  • 5
Working with Strings in python
نویسنده پیام
grimm غایب
كاربر دو ستاره
**

ارسال‌ها: 110
موضوع‌ها: 15
تاریخ عضویت: بهمن ۱۳۹۲

تشکرها : 290
( 255 تشکر در 108 ارسال )
ارسال: #1
Working with Strings in python
درود

چک کردن رشته برای حروف بزرگ و کوچک:

تعریف متغییر
کد:
string="iranled.com"

چک کردن برای حروف کوچک
کد:
string.islower()
چک کردن برای حروف بزرگ
کد:
string.isupper()

نحوه کار:
هر 2 تابع islower و isupper رشته مورد نظر را برای حروف کوچک و بزرگ چک میکنند و اگر تمام رشته از حروف بزرگ یا کوچک تشکیل شده بود مقدار True
و در غیر این صورت مقدار False را بر میگرداند.
(آخرین ویرایش در این ارسال: ۳۱-شهریور-۱۳۹۳, ۰۲:۲۶:۰۴، توسط grimm.)
۳۰-شهریور-۱۳۹۳, ۱۵:۲۸:۵۷
ارسال‌ها
پاسخ
تشکر شده توسط : omid_phoenix, helma, a.mehran
grimm غایب
كاربر دو ستاره
**

ارسال‌ها: 110
موضوع‌ها: 15
تاریخ عضویت: بهمن ۱۳۹۲

تشکرها : 290
( 255 تشکر در 108 ارسال )
ارسال: #2
RE: Working with Strings in python
تابع دیگری نیز به نام isdigit() وجود دارد که مانند تابع های بالایی استفاده میشود اما اینبار به جای حروف کوچک و بزرگ رشته را برای اعداد چک میکند
توجه کنید که این تابع رشته را برای اعداد چک میکند بنابراین مقدار متغییر نباید عدد صحیح باشد.

مثال

g=34
g.isdigit()
ارور خواهد داد
g='34'
g.isdigit()
مقدار True برگشت داده میشود

b='34DFDsd'
b.isdigit()
مقدار false برگشت داده میشود چون متغییر b به غیر از اعداد حروف نیز دارد

توجه کنید از اسم 3 تابع معرفی شده مشخصه is یعنی است! بنابراین isdigit میشود عدد است؟ خوب مشخص است متغییری که به ان میدهیم اگر تمام مقدارش عدد نباشد مقدار false برگردانده میشود

برای به دست اوردن تعداد حروف یک رشته میتوان از تابع len استفاده کرد به این صورت

کد:
x='iranled.com'
len(x)

نتیجه دستورات بالا:--> 11
(آخرین ویرایش در این ارسال: ۳۱-شهریور-۱۳۹۳, ۰۲:۳۴:۳۷، توسط grimm.)
۳۱-شهریور-۱۳۹۳, ۰۲:۳۱:۵۸
ارسال‌ها
پاسخ
تشکر شده توسط : a.mehran, lord_viper, helma, omid_phoenix
grimm غایب
كاربر دو ستاره
**

ارسال‌ها: 110
موضوع‌ها: 15
تاریخ عضویت: بهمن ۱۳۹۲

تشکرها : 290
( 255 تشکر در 108 ارسال )
ارسال: #3
RE: Working with Strings in python
برای بر عکس کردن رشته در ساده ترین حالت میتوانیم از کد زیر استفاده کنیم.

کد:
string='string'

string [::-1]

کد بالا شروع میکند و از اخر رشته درون متغییر را مرتب میکند
نکته:توجه کنید مقدار متغییر تغییر نمیکند.

[begin:end:step]
begin نقطه شروع است end نقطه پایان و step تعداد قدم هاست و زمانی که ما -1 را در step استفاده کنیم و باقی را خالی بگذاریم از اخر رشته شروع میکند تا به ابتدا رشته برسد.

کد:
string [0:5:1]

با استفاده از کد بالا شما رشته strin را دریافت میکنید
اما چه اتفاقی افتاد که ما این رشته را دریافت کردیم؟
رشته در واقع یک ارایه است و ارایه ها معمولا از 0 شروع میشوند
ما نقطه شروع را 0 که همان حرف s است نقطه پایان را 5 که همان حرف n است داده ایم.

و تعداد قدم ها را برابر با 1 قرار دادیم بنابراین مفسر پایتان برای ما شروع میکند و از s یکی یکی تا n جلو میرود و نتیجه را برای ما چاپ میکند.
۳۱-شهریور-۱۳۹۳, ۱۵:۲۴:۵۸
ارسال‌ها
پاسخ
تشکر شده توسط : omid_phoenix
grimm غایب
كاربر دو ستاره
**

ارسال‌ها: 110
موضوع‌ها: 15
تاریخ عضویت: بهمن ۱۳۹۲

تشکرها : 290
( 255 تشکر در 108 ارسال )
ارسال: #4
RE: Working with Strings in python
تابع swapcase
با استفاده از این تابع میتوان حروف کوچک در رشته را به حروف بزرگ و حروف بزرگ در رشته را به حروف کوچک تبدیل نمود.
در واقع این تابع case حروف را در رشته را برعکس میکند.

یک مثال ساده:
کد:
string=This Is A String'
string.swapcase()
پس از اجرای دستور خروجی زیر را شاهد خواهیم بود.

کد:
tHIS iS a sTRING
۱۶-مهر-۱۳۹۳, ۰۱:۱۲:۲۰
ارسال‌ها
پاسخ
تشکر شده توسط : omid_phoenix, lord_viper, رسول
grimm غایب
كاربر دو ستاره
**

ارسال‌ها: 110
موضوع‌ها: 15
تاریخ عضویت: بهمن ۱۳۹۲

تشکرها : 290
( 255 تشکر در 108 ارسال )
ارسال: #5
RE: Working with Strings in python
درود

کد:
string='str'
print('Orginal:',string)
print('New:',string.replace('s','a'))
print('Orginal variable string after string.replace('s','a'):',string)
string=string.replace('s','a')
print('After changeing variable value:',string)
بنده فک نمیکنم نیازی به شرح دادن باشد.

موفق باشید.
۱۰-آبان-۱۳۹۳, ۲۲:۳۴:۰۲
ارسال‌ها
پاسخ
تشکر شده توسط : babyy
grimm غایب
كاربر دو ستاره
**

ارسال‌ها: 110
موضوع‌ها: 15
تاریخ عضویت: بهمن ۱۳۹۲

تشکرها : 290
( 255 تشکر در 108 ارسال )
ارسال: #6
RE: Working with Strings in python
درود
برای اینکه بتوانیم تعداد تکرار یک واچ را در یک رشته به دست اوریم میتوانیم از تابع count استفاده کنیم.

کد:
string.count(str,start,end)
اکنون اگر بخوایم بدانیم حرف i چند بار در رشته i love winter تکرار شده است باید از کد زیر استفاده نماییم.
کد:
string='i love winter'
print(string.count('i', 0,len(string)))
مفسر پایتان به ما عدد 2 را می دهد زیرا i 2 بار در رشته تکرار شده است.
اگر رشته را به I love winter تغییر دهیم نتیجه 1 میباشد زیرا رشته ای که به تابع دادیم i میباشد و i با I ناسان است.
اینکه 0 ارگومان دوم است برای این است که رشته یک ارایه کارکتری است و در زبان پایتان ارایه یا بهتر است بگوییم لیست از 0 شروع میشود و ما هم میخواهیم از اولین حرف بشماریم.
اگر ان را برای نمونه به 1 تغییر دهید انگاه تعداد تکرار i به یک کاهش میابد.
ولی اینکه len را به کار برده ایم برای این است که میخواهیم این جستجو تا اخر رشته ادامه یابد.
ولی اگر اینطور نمیخواهید کافی است ایندکس دلخواه را برای اخرین ایندکس انتخاب نمایید.
موفق باشید.
۱۰-آبان-۱۳۹۳, ۲۲:۵۲:۵۱
ارسال‌ها
پاسخ
تشکر شده توسط : babyy
grimm غایب
كاربر دو ستاره
**

ارسال‌ها: 110
موضوع‌ها: 15
تاریخ عضویت: بهمن ۱۳۹۲

تشکرها : 290
( 255 تشکر در 108 ارسال )
ارسال: #7
RE: Working with Strings in python
درود
پیدا کردن کوچکترین و بزرگترین واچ در یک رشته:
کد:
string='abcd'
print('Min:' + min(string))
print('Max:' + max(string))
پیروز باشید.
۲۰-فروردین-۱۳۹۴, ۰۳:۱۴:۲۸
ارسال‌ها
پاسخ
تشکر شده توسط : رسول
grimm غایب
كاربر دو ستاره
**

ارسال‌ها: 110
موضوع‌ها: 15
تاریخ عضویت: بهمن ۱۳۹۲

تشکرها : 290
( 255 تشکر در 108 ارسال )
ارسال: #8
RE: Working with Strings in python
درود
zfill(x) method
با بکارگیری این متود میتوان به اغاز هر رشته مقداری صفر اضافه کرد.
x مقدار طول نهایی رشته پس از اضافه شدن 0 ها میباشد.
نمونه
کد:
string='test'
print(string.zfill(7))
با اجرای این کد ما به رشته ی زیر خواهیم رسید.
کد:
000test
طول رشته test عدد 4 میباشد و طول رشته نهایی 7 میباشد بنابراین 3 تا صفر به رشته test اضافه خواهد شد.
یکی از کاربرد ها در زمینه کار با مقدار های باینری میباشد.
برای نمونه مقدار باینری رشته hello world میشود
کد:
0110100001100101011011000110110001101111001000000111011101101111011100100110110001100100
اکنون ما در پایتان میخواهیم این مقدار را به دست بیاوریم.
کد:
کد:
string='hello world'
bin=''
for i in string:
    bin+= format(ord(i),'b')
print(bin)
مقداری که ما دریافت خواهیم کرد:
کد:
1101000110010111011001101100110111110000011101111101111111001011011001100100
هر بایت 8 بیت است و ما باید برای هر واچ در رشته hello world یک بایت دریافت کنیم بنابراین کد ما میشود:
کد:
string='hello world'
bin=''
for i in string:
    bin+= format(ord(i),'b').zfill(8)
print(bin)
اکنون ما برای هر واچ در رشته 8 بیت را دریافت خواهیم کرد.
پیروز باشید.
۲۰-فروردین-۱۳۹۴, ۱۲:۱۹:۵۴
ارسال‌ها
پاسخ
تشکر شده توسط : رسول


موضوعات مرتبط با این موضوع...
موضوع نویسنده پاسخ بازدید آخرین ارسال
  ##Python & Tools## grimm 1 1,874 ۲۱-فروردین-۱۳۹۴, ۲۲:۳۹:۴۲
آخرین ارسال: grimm
  Random module in python grimm 10 5,721 ۰۴-آبان-۱۳۹۳, ۱۹:۵۵:۱۲
آخرین ارسال: a.mehran
  Invent Your Own Games With Python grimm 0 1,408 ۰۷-مهر-۱۳۹۳, ۰۲:۰۴:۵۲
آخرین ارسال: grimm
  Hacking Secret Ciphers with Python grimm 0 1,504 ۰۵-مهر-۱۳۹۳, ۲۰:۰۵:۴۲
آخرین ارسال: grimm
  sending packets in python grimm 0 1,550 ۰۵-مهر-۱۳۹۳, ۱۶:۱۵:۰۴
آخرین ارسال: grimm
  کار با PE در python babyy 1 2,041 ۲۷-آبان-۱۳۹۲, ۰۱:۱۱:۰۹
آخرین ارسال: babyy

پرش به انجمن:


کاربرانِ درحال بازدید از این موضوع: 1 مهمان

صفحه‌ی تماس | IranVig | بازگشت به بالا | | بایگانی | پیوند سایتی RSS