편집 기록

편집 기록
  • 프로필 nowp님의 편집
    날짜2020.05.29

    부호도 프린트하고 싶습니다.


    def count(string):
        string = string.lower()
        string = string.replace(' ','')
        dic ={}
        while string:
            key = string[0]
            if key.isalpha():
                value = string.count(key)
                dic[key]=value
            string = string.replace(key,'')
        print(dic, end='')
        return dic
    
    a = input("문자열 입력 : ")
    count(a)
    
    

    제가 이런 식으로 코드를 만들었는데요, 질문이 생겨서요.

    우선 첫번째는, 알파벳뿐만 아니라 느낌표나 콤마 같은 부호들도 카운트 되었으면 좋겠습니다. 그래서 제가 if key.isalpha():를 빼보려고도 해보았으나 그걸 건드리면 어떻게 수습해야 할 지 모르겠어서 건드리지를 못하고 있습니다.

    두번째는 이 코드를 실행시키면 중괄호가 사용되어 dict 형식으로 출력되는데 저는 중괄호를 없애고 알파벳들을 하나씩 왼쪽 정렬하기를 원합니다. 그래서 print(dic, end='')도 사용해보았는데 안 되네요.

    마지막 세번째는 while 대신 for을 사용하려면 어떻게 해야 하나요?

    제가 완전 파이썬 초보라 오류가 있어도 잘 모릅니다. 많이들 도와주십시오.

  • 프로필 알 수 없는 사용자님의 편집
    날짜2020.05.29

    부호도 프린트하고 싶습니다.


    def count(string):
        string = string.lower()
        string = string.replace(' ','')
        dic ={}
        while string:
            key = string[0]
            if key.isalpha():
                value = string.count(key)
                dic[key]=value
            string = string.replace(key,'')
        print(dic, end='')
        return dic
    
    a = input("문자열 입력 : ")
    count(a)
    
    ```제가 이런 식으로 코드를 만들었는데요, 질문이 생겨서요.
    우선 첫번째는, 알파벳뿐만 아니라 느낌표나 콤마 같은 부호들도 카운트 되었으면 좋겠습니다. 그래서 제가 `if key.isalpha():`를 빼보려고도 해보았으나 그걸 건드리면 어떻게 수습해야 할 지 모르겠어서 건드리지를 못하고 있습니다.
    두번째는 이 코드를 실행시키면  중괄호가 사용되어 dict 형식으로 출력되는데 저는 중괄호를 없애고 알파벳들을  하나씩 왼쪽 정렬하기를 원합니다. 그래서 `print(dic, end='')`도 사용해보았는데 안 되네요...
    마지막 세번째는 `while` 대신 `for`을 사용하려면 어떻게 해야 하나요?
    제가 완전 파이썬 초보라 오류가 있어도 잘 모릅니다. 많이들 도와주십시오.