سلام من خواستم این پروژه تمرینی انجام بدم الگوریتم پروژه به این شکل هست که شما یک کلمه به عنوان ورودی به برنامه میدید و برنامه از کاراکتر اول اون استرینگ باید به تعداد اندیس تکرار کنه و بعد مابقی کلمه بهش قرار بگیره
نمونه خروجی
codecup
codecup
oodecup
dddecup
eeeecup
cccccup
uuuuuup
ppppppp
من برنامه نوشتم و خواستم با enumerate اینکار بکنم که اتفاقا درست شد اما مشکل اینه کاراکترهای آخر حذف نمیکنه
name = str(input('please enter your guess word : \n'))
for i in name[0:]:
if len(name) <= 20:
y = list(map(lambda c2: c2, name))
print(name)
break
else:
exit(0)
for num,letter in enumerate(y):
if num:
num+= 1
total = num * letter
print(total + name[3:])
print('finshed program')
خروجی کد
codecup
codecup
ooecup
dddecup
eeeeecup
cccccecup
uuuuuuecup
pppppppecup
finshed program
سلام
فکر کنم این قسمت:
for i in name[0:]:
مشکل داره. این در واقع هیچ کاری نمی کنه
فکر کنم باید از همچین روشی استفاده کنی
a = "Hello"
e = len(a) - 1
print(a[:e])
یعنی اون for اول رو به این تغییر بدی:
for i in name[:len(name) - 1]:
البته زیاد نفهمیدم مشکل این بوده یا نه ولی به این شک کردم
شما تو خط ۱۴ ام گفتین ایندکس ۳ به بعد رو بذار تهش خب معلومه اینجوری میشه
من اینو خیلی وقت پیش حل کرده بودم
به این صورت
n = input()
for i in range(len(n)):
print((n[i]*(i+1))+n[i+1:])
انگار یخورده عجیب نوشتمش😅 ولی راه سریع و جالبی انتخاب کردم
آره اینم میشه ولی خودم با enumerate میخواستم انجام بدم برنامه درست کار میکنه فقط یک باید هر اندیس تکرار میکنه به کلمه بعدی جامپ کنه و قبلی ننویسه که نمیدونم چجوری اینکار کنم
میخوام یک کاری کنم که به هر بار برنامه خودش کاراکترهای بعدی که وجود دارن بریزه توی لیست و بعد بتونم اون کاراکترها به کاراکترهای قبلی بچسبونم هر کاری کردم با slice نتونستم اینکار انجام بدم
![ ![تصویر][1]][1]
[1]:
https://static.roocket.ir/images/editor/2022/4/9/Lz297oKuTgQHqWJyJxHCadamQQEmlBzto0wQa56m.jpg
در تصویر همه چیز مشخصه و ایراد کار هم اون قسمت اندیس هست که گزاشتم 2 به بعد و برای همین از کاراکتر سوم درست نشون نمیده میشه دقیقا بگید چجوری کار کنم هر کاراکتر چک کنه و فقط کاراکترهای بعدی بنویسه
@milad
@arastoo
for num,letter in enumerate(y):
if num:
num+= 1
total = num * letter
print(total + name[2:])
آیا مایل به ارسال نوتیفیکیشن و اخبار از طرف راکت هستید ؟