source

Python에서 문자열과 정수 연결

factcode 2023. 7. 18. 22:00
반응형

Python에서 문자열과 정수 연결

Python에서 다음과 같이 말합니다.

s = "string"
i = 0
print s + i

당신에게 오류를 줄 테니, 당신은 글을 쓰세요.

print s + str(i)

오류가 발생하지 않도록 합니다.

이것은 int와 string 연결을 다루는 꽤 서투른 방법이라고 생각합니다.

Java에서도 이러한 종류의 연결을 위해 String에 대한 명시적인 캐스팅이 필요하지 않습니다.파이썬에서 명시적인 캐스팅 없이 이러한 종류의 연결을 수행할 수 있는 더 나은 방법이 있습니까?

최신 문자열 형식:

"{} and {}".format("string", 1)

문자열 형식 지정 없음:

>> print 'Foo',0
Foo 0

문자열 형식 지정, 새로운 스타일 사용.format()method(기본값은 .format으로 제공):

 '{}{}'.format(s, i)

아니면 나이가 더 들었지만 "여전히 붙어 다닌다"고 해도%-포맷:

 '%s%d' %(s, i)

위의 두 예에서는 두 항목 사이에 연결된 공간이 없습니다.공간이 필요한 경우 형식 문자열에 공간을 추가하기만 하면 됩니다.

이러한 기능은 항목을 연결하는 방법, 항목 사이의 공간 등에 대한 많은 제어와 유연성을 제공합니다.형식 사양에 대한 자세한 내용은 다음을 참조하십시오.

Python은 주어진 작업을 수행하는 한 가지(또는 두 가지) "명백한" 방법이 있지만 유연성은 여전히 존재한다는 점에서 흥미로운 언어입니다.

s = "string"
i = 0

print (s + repr(i))

위의 코드 스니펫은 Python 3 구문으로 작성되었지만, 버전 3이 괄호를 필수로 만들 때까지 인쇄 후 괄호는 항상 허용되었습니다(선택 사항).

Python 3.6 이상에서는 다음과 같이 포맷할 수 있습니다.

new_string = f'{s} {i}'
print(new_string)

아니면 그냥:

print(f'{s} {i}')

format() 메서드를 사용하여 문자열과 정수를 연결할 수 있습니다.

print(s + "{}".format(i))

anf-string도 사용할 수 있습니다!

s = "string"
i = 95
print(f"{s}{i}")

다음과 같은 상황에서 문자열과 정수를 연결하려고 한다고 가정합니다.

for i in range(1, 11):
   string = "string" + i

유형 또는 연결 오류가 발생했습니다.

가장 좋은 방법은 다음과 같은 작업을 수행하는 것입니다.

for i in range(1, 11):
   print("string", i)

이렇게 하면 문자열 1, 문자열 2, 문자열 3 등과 같은 연결된 결과를 얻을 수 있습니다.

인쇄만 하려는 경우 다음 작업을 수행할 수 있습니다.

print(s, i)

언급URL : https://stackoverflow.com/questions/11559062/concatenating-string-and-integer-in-python

반응형