저는 현재 작업하고있는 문제가 있습니다. 문제의 목표는 문자열 자리 표시 자 i
을 가져 오는 것입니다. i
이 균등 한 자리 표시자인 경우 i
에있는 문자를 i -1
에있는 문자로 바꿉니다. i
자리 표시자가 홀수 인 경우 i
문자를 i +1
문자로 바꿉니다.문자열의 다른 자리 표시 자에서 str.replace를 사용하여 문자열의 다른 자리 표시 자로 바꿉니다.
여기에 지금까지 내 코드입니다 :
def easyCrypto (s):
for i in range (0,len(s)-1):
if i % 2 == 0:
str(s).replace(i,((i-1)))
if i % 2 != 0:
str(s).replace(i,((i+2)))
print (s)
내 오류 :
Traceback (most recent call last):
File "<pyshell#4>", line 1, in <module>
easyCrypto('abc')
File "C:/Python/cjakobhomework7.py", line 4, in easyCrypto
str(s).replace(i,((i-1)))
TypeError: Can't convert 'int' object to str implicitly
갱신!
Traceback (most recent call last):
File "<pyshell#7>", line 1, in <module>
easyCrypto('abc')
File "C:/Python/cjakobhomework7.py", line 4, in easyCrypto
s = str(s).replace(s(i),(s(i-1)))
TypeError: 'str' object is not callable
어떤 아이디어 :
def easyCrypto (s):
for i in range (0,len(s)-1):
if i % 2 == 0:
s = str(s).replace(s(i),(s(i-1)))
else:
s = s.replace(s(i), s(i + 1))
print (s)
그러나 나는 아직도 다음과 같은 오류가 있습니다 : 응답에 따라
새로운 코드? 당신에게 감사
여기에 두 가지가 있습니다
문제는'i'는 _integer_이고'str.replace'는 인수가 _strings_이 될 것으로 예상한다는 것입니다. – mgilson