파이썬 문자열 숫자 더하기 - paisseon munjayeol susja deohagi

안 쓰던 블로그

파이썬 문자열 각 자리 숫자합, 문자열 변환 본문

언어/파이썬

파이썬 문자열 각 자리 숫자합, 문자열 변환

proqk 2020. 10. 7. 23:56

문자열의 각 자리 숫자합 구하기

while True:
    sum = 0
    str = ""
    s=input("숫자를 입력하시오:")
    if s == "": #아무것도 입력하지 않으면 끝
        break
    for i in s:
        sum += int(i)
        str = str + '+' + i
    str=str.replace('+','',1)
    print("입력받은 숫자 : ", s)
    print("각자리 숫자의 합 :", end=" ")
    print(str,'=',sum)

각종 문자열 출력, 변환

s=input("영문 문자열 입력: ")
print("문자열의 문자수(길이): ", len(s))

go=""
for i in range(0, 10) :
    go+=s
print("문자열을 10번 반복한 문자열: ", go)

print("문자열의 첫 번째 문자: ", s[0])

print("문자열의 처음 세 문자: ", s[0:3])

print("문자열의 마지막 세 문자: ", s[-3:])

count = len(s) # 문자열 길이
outStr = " " # 변수를 초기화(빈 문자열)
for i in range(0, count) :
    outStr += s[count-(i + 1)]
print("문자열 거꾸로 출력(역순): %s" % outStr)

if len(s)>=7:
    print("문자열에 7번째 문자가 있으면 출력: ", s[6])
else:
    print("7번째 문자가 없습니다")

print("문자열에서 첫 번째 문자와 마지막 문자를 제거한 문자열: ", s[1:-1])

print("문자를 모두 대문자로 변경: ", s.upper())

print("문자를 모두 소문자로 변경: ", s.lower())

파이썬 문자열 숫자 더하기 - paisseon munjayeol susja deohagi

파이썬에서는 문자열을 가지고 더하거나 곱하는 연산이 가능합니다.

a= "안녕"

b = "하세요"

이 두가지 변수를 가지고 해보겠습니다. 

파이썬 문자열 숫자 더하기 - paisseon munjayeol susja deohagi
                                

위의 사진처럼 되었습니다 그러면 곱해볼까요?

파이썬 문자열 숫자 더하기 - paisseon munjayeol susja deohagi

여기서 a 와 b를 곱하게 되면 어떻게 될까요? 

파이썬 문자열 숫자 더하기 - paisseon munjayeol susja deohagi

오류가 나게 됩니다 . 문자열끼리 곱은안된다구 말하고있습니다 (영어..ㅎㅎ..) 

마지막으로 한가지더 문자열의 길이에 대해서 알아보겠습니다

len(value) : 문자열의 길이를 알수있는 함수 

value 에 아까 만들었던 문자를 넣어보면 문자의 길이를 알려줍니다. 

파이썬 문자열 숫자 더하기 - paisseon munjayeol susja deohagi

이런식으로 말이죠! 

그러면 c = 1232165465798789 의 길이를 알려면 어떻게 해야할까요 

len(c) 로 하면되겠죠?! 결과화면을 볼까요? 

파이썬 문자열 숫자 더하기 - paisseon munjayeol susja deohagi

*int는 숫자형이다. 

TypeError 가 났습니다. 객체타입인 숫자형(int)는 길이를 셀 수 없습니다 라고 나옵니다

즉 문자열만 길이를 셀수있다는 것을 알수있었습니다. 

그러면 위의 코드를 수정해서 길이를 세려면 어떻게 해야할까요?! 

                                                         .

                                                         .

                                                         .

                                                         .

                                                         .

                                                         .

문자열 즉 문자의 형태를 띄고있는 문자열만 가능하니까 숫자형인 c문자형으로 바꿔주면 되겠습니다! 

형변환 : 형태를 바꾸는 것

     Str(c)이렇게 바꿔주면 됩니다. 

프로그램의 결과를 보기전에 한가지만 더 알고 결과를 볼까요! 

Type(value) : value 형태를 알수있는 함수  

파이썬 문자열 숫자 더하기 - paisseon munjayeol susja deohagi

위 처럼 자신이 알고싶은 형태의 변수를 value 에 넣으면 형태 즉 타입을 알수있습니다.

글을 잘 보신분은 눈치 쳇을 지도 모르겠네요ㅎㅎ

문자열의 길이를 알려면 어떻해 해야한다구 했죠? 

len(value) 의 value 의 자리에 넣어야 한다구 했습니다. 

그런데 위에서는 형변환만 했다고해서 문자열의 길이를 구 할 수는 없습니다.

형변환한 상태를 문자열의 길이를 구하는 value에 넣으면 됩니다.

len(str(c)) 이런 식으로 말입니다

파이썬 문자열 숫자 더하기 - paisseon munjayeol susja deohagi

C의 타입은 (int)숫자형 입니다

숫자형태의 C를 len() 에 넣으면 당연히 오류가 나겠죠? 

파이썬 문자열 숫자 더하기 - paisseon munjayeol susja deohagi

그러면 이제 len(str(c)) 하면 오류가 안날 것입니다

파이썬 문자열 숫자 더하기 - paisseon munjayeol susja deohagi

사진이 너무 작나요...? ㅎㅎ 

자 알맞는 결과가 나왔습니다! 긴글 끝까지 봐주셔서 감사합니다.