انجمن‌های فارسی اوبونتو

لطفاً به انجمن‌ها وارد شده و یا جهت ورود ثبت‌نام نمائید

لطفاً جهت ورود نام کاربری و رمز عبورتان را وارد نمائید

نویسنده موضوع: سوالات پایتونی  (دفعات بازدید: 6567 بار)

0 کاربر و 7 مهمان درحال مشاهده موضوع.

آفلاین M!lad

  • عضو کاربران ایرانی اوبونتو
  • *
  • ارسال: 1757
پاسخ : سوالات پایتونی
« پاسخ #15 : 21 خرداد 1395، 10:45 ب‌ظ »
https://en.wikipedia.org/wiki/Zen_of_Python
نقل‌قول
There should be one— and preferably only one —obvious way to do it.

آره و Origin اش اونجایی هست که گفتم...

مواردی که گذاشتم رو چک کردی؟
..I feel no fault for the fault I feel..

آفلاین su

  • Full Member
  • *
  • ارسال: 102
  • جنسیت : پسر
    • Weblog
پاسخ : سوالات پایتونی
« پاسخ #16 : 21 خرداد 1395، 10:50 ب‌ظ »
https://en.wikipedia.org/wiki/Zen_of_Python
نقل‌قول
There should be one— and preferably only one —obvious way to do it.

آره و Origin اش اونجایی هست که گفتم...

مواردی که گذاشتم رو چک کردی؟

بلی اینم اون نیست. این اومده به حالت ریاضی استانداردش کرده.وی فک کنم یه روش ساده به ذهنم رسید.فقط باید تعداد کاراکترهای بعد . اعشار رو بشمره.چطور این کار رو باید بکنم؟
مثلا 3.14
دو کاراکتر بعد . داره. چطور تو پایتون باید بشمرمشون ؟
یعنی بگم تعداد کاراکترهای بعد . رو بشمر
اگه تا هفده مهر ۱۳۹۶ یعنی روز اول ۳۱ سالگیم  به جایی خواستم نرسیدم . شروع میکنم به روزمرگی

آفلاین msajadi832

  • Sr. Member
  • *
  • ارسال: 331
  • جنسیت : پسر
  • http://appza.ir
    • اپزا: ابزار هوشمند کسب و کار شما
پاسخ : سوالات پایتونی
« پاسخ #17 : 21 خرداد 1395، 11:00 ب‌ظ »
موقعیت نقطه توی عدد رو پیدا کن و موقعیت اون رو از طول رشته کم کن و -۱ هم بکن!

۴-۱-۱ = ۲
« آخرین ویرایش: 21 خرداد 1395، 11:02 ب‌ظ توسط msajadi832 »

آفلاین su

  • Full Member
  • *
  • ارسال: 102
  • جنسیت : پسر
    • Weblog
پاسخ : سوالات پایتونی
« پاسخ #18 : 21 خرداد 1395، 11:04 ب‌ظ »
موقعیت نقطه توی عدد رو پیدا کن و موقعیت اون رو از طول رشته کم کن و -۱ هم بکن!

۴-۱-۱ = ۲
>>> a=3.14
>>> a
3.14
>>> str(a).replace(^.,"")
  File "<stdin>", line 1
    str(a).replace(^.,"")
                   ^
SyntaxError: invalid syntax


جواب نداد
اگه تا هفده مهر ۱۳۹۶ یعنی روز اول ۳۱ سالگیم  به جایی خواستم نرسیدم . شروع میکنم به روزمرگی

آفلاین alireza.crs

  • Sr. Member
  • *
  • ارسال: 491
  • جنسیت : پسر
پاسخ : سوالات پایتونی
« پاسخ #19 : 21 خرداد 1395، 11:08 ب‌ظ »
از توابع جزء صحیح math.floor ویا سقف math.ceil استفاده کنید

آفلاین msajadi832

  • Sr. Member
  • *
  • ارسال: 331
  • جنسیت : پسر
  • http://appza.ir
    • اپزا: ابزار هوشمند کسب و کار شما
پاسخ : سوالات پایتونی
« پاسخ #20 : 21 خرداد 1395، 11:10 ب‌ظ »
>>> a = 3.14
>>> b = str(a)
>>> b
'3.14'
>>> pos = b.find('.')
>>> pos
1
>>> count = len(b)-pos-1
>>> count
2

replace این وسط چیکاره هست؟

آفلاین su

  • Full Member
  • *
  • ارسال: 102
  • جنسیت : پسر
    • Weblog
پاسخ : سوالات پایتونی
« پاسخ #21 : 21 خرداد 1395، 11:15 ب‌ظ »
>>> a = 3.14
>>> b = str(a)
>>> b
'3.14'
>>> pos = b.find('.')
>>> pos
1
>>> count = len(b)-pos-1
>>> count
2

replace این وسط چیکاره هست؟

قربون جدت بشم . هلم دادی روووشن شدم

>>> a=3.14
>>> b=str(a).split(".")
>>> b
['3', '14']
>>> c=len(str(b[1])
... )
>>> c
2
>>> d=str(a).replace(".","")
>>> d
'314'
>>> print (d,"* 10 ** -",c,sep="")
314* 10 ** -2
>>>
اگه تا هفده مهر ۱۳۹۶ یعنی روز اول ۳۱ سالگیم  به جایی خواستم نرسیدم . شروع میکنم به روزمرگی

آفلاین su

  • Full Member
  • *
  • ارسال: 102
  • جنسیت : پسر
    • Weblog
پاسخ : سوالات پایتونی
« پاسخ #22 : 21 خرداد 1395، 11:17 ب‌ظ »
>>> a = 3.14
>>> b = str(a)
>>> b
'3.14'
>>> pos = b.find('.')
>>> pos
1
>>> count = len(b)-pos-1
>>> count
2

replace این وسط چیکاره هست؟

میخواستم بگم از اول رشته تا جایی می رسی به . رو پاک کن. که به حمدلله نشد:دی. نمیدونم چطو باید پاک کنم
اگه تا هفده مهر ۱۳۹۶ یعنی روز اول ۳۱ سالگیم  به جایی خواستم نرسیدم . شروع میکنم به روزمرگی

آفلاین msajadi832

  • Sr. Member
  • *
  • ارسال: 331
  • جنسیت : پسر
  • http://appza.ir
    • اپزا: ابزار هوشمند کسب و کار شما
پاسخ : سوالات پایتونی
« پاسخ #23 : 21 خرداد 1395، 11:20 ب‌ظ »
>>> number = 3.14
>>> str(number-int(number))[2:]
'14'
این هم یه روش برای بدست آوردن فقط بعد از ممیز، که از توی stackoverflow یافتم

آفلاین su

  • Full Member
  • *
  • ارسال: 102
  • جنسیت : پسر
    • Weblog
پاسخ : سوالات پایتونی
« پاسخ #24 : 21 خرداد 1395، 11:24 ب‌ظ »
>>> number = 3.14
>>> str(number-int(number))[2:]
'14'
این هم یه روش برای بدست آوردن فقط بعد از ممیز، که از توی stackoverflow یافتم
https://twitter.com/sae13/status/741260457248489472
سوال بعدی درباره ریپلیس. چطو بگم از اول رشته پاک کن تا زمانی که میرسی به یه کاراکتر خاص؟ تو ای مثال "." بود اون کاراکتر
اگه تا هفده مهر ۱۳۹۶ یعنی روز اول ۳۱ سالگیم  به جایی خواستم نرسیدم . شروع میکنم به روزمرگی

آفلاین msajadi832

  • Sr. Member
  • *
  • ارسال: 331
  • جنسیت : پسر
  • http://appza.ir
    • اپزا: ابزار هوشمند کسب و کار شما
پاسخ : سوالات پایتونی
« پاسخ #25 : 21 خرداد 1395، 11:29 ب‌ظ »
حتما باید با replace باشه؟
در همون مثال نقطه می تونی موقعیت نقطه رو پیدا کنی (مثلا ۱) و از نقطه به بعد رو بریزی توی یه متغیر دیگه (یا همون متغیر)

>>> number = 3.14
>>> strNum = str(number)
>>> end = strNum[strNum.find('.'):]
>>> end
'.14'
« آخرین ویرایش: 21 خرداد 1395، 11:31 ب‌ظ توسط msajadi832 »

آفلاین su

  • Full Member
  • *
  • ارسال: 102
  • جنسیت : پسر
    • Weblog
پاسخ : سوالات پایتونی
« پاسخ #26 : 21 خرداد 1395، 11:33 ب‌ظ »
حتما باید با replace باشه؟
در همون مثال نقطه می تونی موقعیت نقطه رو پیدا کنی (مثلا ۱) و از نقطه به بعد رو بریزی توی یه متغیر دیگه

>>> number = 3.14
>>> strNum = str(number)
>>> end = strNum[strNum.find('.'):]
>>> end
'.14'
یا میتونم اسپلیت کنم و ارایه اول حذف کنم. ولی دستوری مثل بش نداریم که خودش ای کار بکنه؟
تو بش با sed نمینویسیم ^. یعنی از اول تا نقطه یا .% یعنی از نقطه تا آخر رو پاک کن؟
اگه تا هفده مهر ۱۳۹۶ یعنی روز اول ۳۱ سالگیم  به جایی خواستم نرسیدم . شروع میکنم به روزمرگی

آفلاین su

  • Full Member
  • *
  • ارسال: 102
  • جنسیت : پسر
    • Weblog
پاسخ : سوالات پایتونی
« پاسخ #27 : 22 خرداد 1395، 12:08 ق‌ظ »
حتما باید با replace باشه؟
در همون مثال نقطه می تونی موقعیت نقطه رو پیدا کنی (مثلا ۱) و از نقطه به بعد رو بریزی توی یه متغیر دیگه

>>> number = 3.14
>>> strNum = str(number)
>>> end = strNum[strNum.find('.'):]
>>> end
'.14'
یا میتونم اسپلیت کنم و ارایه اول حذف کنم. ولی دستوری مثل بش نداریم که خودش ای کار بکنه؟
تو بش با sed نمینویسیم ^. یعنی از اول تا نقطه یا .% یعنی از نقطه تا آخر رو پاک کن؟

یافتم یافتم
>>> a=3.1415161718
>>> re.sub(r'^.*\.','',str(a))
'1415161718'

http://www.tutorialspoint.com/python/python_reg_expressions.htm
« آخرین ویرایش: 22 خرداد 1395، 12:49 ق‌ظ توسط sae13 »
اگه تا هفده مهر ۱۳۹۶ یعنی روز اول ۳۱ سالگیم  به جایی خواستم نرسیدم . شروع میکنم به روزمرگی

آفلاین 藤沼

  • Sr. Member
  • *
  • ارسال: 414
  • جنسیت : پسر
پاسخ : سوالات پایتونی
« پاسخ #28 : 22 خرداد 1395، 02:17 ق‌ظ »
چطور یک رشته بعد از یک زیررشتهٔ خاص (کارکتر) رو بگیرم؟
STFW
text = 'Nobody should start to undertake a large project. You start with a small trivial project, and you should never expect it to get large.'
text.split('.', 1)[-1]
=> '. You start with a small trivial project, and you should never expect it to get large.'
http://stackoverflow.com/a/904756

آفلاین su

  • Full Member
  • *
  • ارسال: 102
  • جنسیت : پسر
    • Weblog
پاسخ : سوالات پایتونی
« پاسخ #29 : 22 خرداد 1395، 08:36 ب‌ظ »
دستور اینپوت همیشه آخرش یه اینتر میخواد.
تو پایتون۳ چطور یه اینپوت بگیرم که نیاز به اینتر نداشته باشه؟Please press  a key for continue

گوگل کردم راهی نوشته بودن فقط تو ویندوز جواب میده \\:D/
« آخرین ویرایش: 22 خرداد 1395، 08:50 ب‌ظ توسط sae13 »
اگه تا هفده مهر ۱۳۹۶ یعنی روز اول ۳۱ سالگیم  به جایی خواستم نرسیدم . شروع میکنم به روزمرگی