[PYTHON] 'str'객체가 Python에서 항목 할당을 지원하지 않습니다.
PYTHON'str'객체가 Python에서 항목 할당을 지원하지 않습니다.
문자열에서 일부 문자를 읽고 다른 문자열에 넣고 싶습니다 (C에서와 같이).
그래서 내 코드는 아래와 같습니다.
import string
import re
str = "Hello World"
j = 0
srr = ""
for i in str:
srr[j] = i #'str' object does not support item assignment
j = j + 1
print (srr)
C에서 코드는
i = j = 0;
while(str[i] != '\0')
{
srr[j++] = str [i++];
}
파이썬에서 어떻게 구현할 수 있습니까?
해결법
-
==============================
1.파이썬에서는 문자열이 변경되지 않기 때문에 문자를 제 자리에서 변경할 수 없습니다.
파이썬에서는 문자열이 변경되지 않기 때문에 문자를 제 자리에서 변경할 수 없습니다.
그러나 다음을 수행 할 수 있습니다.
for i in str: srr += i
이 작동 원리는 다음과 같은 지름길입니다.
for i in str: srr = srr + i
위의 코드는 각 반복마다 새 문자열을 만들고 srr에 새 문자열에 대한 참조를 저장합니다.
-
==============================
2.다른 대답은 정확하지만 물론 다음과 같이 할 수 있습니다 :
다른 대답은 정확하지만 물론 다음과 같이 할 수 있습니다 :
>>> str1 = "mystring" >>> list1 = list(str1) >>> list1[5] = 'u' >>> str1 = ''.join(list1) >>> print(str1) mystrung >>> type(str1) <type 'str'>
네가 정말로 원한다면.
-
==============================
3.파이썬 문자열은 불변이므로 C에서 무엇을하려고하는지는 파이썬에서는 불가능할 것입니다. 새 문자열을 만들어야합니다.
파이썬 문자열은 불변이므로 C에서 무엇을하려고하는지는 파이썬에서는 불가능할 것입니다. 새 문자열을 만들어야합니다.
그런 다음 문자열 슬라이스를 사용합니다.
>>> s1 = 'Hello world!!' >>> s2 = s1[6:12] >>> print s2 world!
-
==============================
4.aix에서 언급했듯이 - 파이썬의 문자열은 변경할 수 없습니다 (변경할 수 없습니다).
aix에서 언급했듯이 - 파이썬의 문자열은 변경할 수 없습니다 (변경할 수 없습니다).
당신이하려는 것은 여러 가지 방법으로 할 수 있습니다 :
# Copy the string foo = 'Hello' bar = foo # Create a new string by joining all characters of the old string new_string = ''.join(c for c in oldstring) # Slice and copy new_string = oldstring[:]
-
==============================
5.특정 문자를 다른 문자로 바꾸려면 다른 방법을 사용하십시오.
특정 문자를 다른 문자로 바꾸려면 다른 방법을 사용하십시오.
def swap(input_string): if len(input_string) == 0: return input_string if input_string[0] == "x": return "y" + swap(input_string[1:]) else: return input_string[0] + swap(input_string[1:])
-
==============================
6.이 솔루션은 어떻습니까?
이 솔루션은 어떻습니까?
str = "Hello World"(문제에서 설명한대로) srr = str + ""
-
==============================
7.안녕하세요 당신은 문자열 분할 방법을 시도해야합니다 :
안녕하세요 당신은 문자열 분할 방법을 시도해야합니다 :
i = "Hello world" output = i.split() j = 'is not enough' print 'The', output[1], j
from https://stackoverflow.com/questions/10631473/str-object-does-not-support-item-assignment-in-python by cc-by-sa and MIT license
'PYTHON' 카테고리의 다른 글
[PYTHON] 파이썬 명령을 사용하여 파이썬의 다른 버전의 핍을 실행하는 방법? (0) | 2018.10.08 |
---|---|
[PYTHON] 파이썬 클래스 인스턴스 변수와 클래스 변수 (0) | 2018.10.08 |
[PYTHON] Python과 BeautifulSoup 인코딩 문제 (0) | 2018.10.08 |
[PYTHON] SQLite "IN"절의 매개 변수 대체 (0) | 2018.10.08 |
[PYTHON] Python PIP Install throws TypeError : - = : 'Retry'및 'int'에 대해 지원되지 않는 피연산자 유형이 있습니다. (0) | 2018.10.08 |