이 기사에서 우리는 주어진 문자열에서 각 문자의 빈도를 찾는 방법을 볼 것입니다. 그런 다음 두 개 이상의 문자가 주어진 문자열에서 동일한 빈도를 갖는지 확인하십시오. 우리는 이것을 두 단계로 수행할 것입니다. 첫 번째 프로그램에서는 각 문자의 빈도를 알아낼 것입니다.
각 문자의 빈도
여기에서 주어진 입력 화면에서 각 문자의 빈도를 찾습니다. 빈 사전을 선언한 다음 각 문자를 문자열로 추가합니다. 또한 사전에 필요한 키-값 쌍을 생성하기 위해 각 문자에 키를 할당합니다.
예
in_string = "She sells sea shells" dic1 = {} for k in in_string: if k in dic1.keys(): dic1[k]+=1 else: dic1[k]=1 print(dic1) for k in dic1.keys(): print(k, " repeats ",dic1[k]," time's")
출력
위의 코드를 실행하면 다음과 같은 결과가 나옵니다. -
{'S': 1, 'h': 2, 'e': 4, ' ': 3, 's': 5, 'l': 4, 'a': 1} S repeats 1 time's h repeats 2 time's e repeats 4 time's repeats 3 time's s repeats 5 time's l repeats 4 time's a repeats 1 time's
각 문자의 고유 빈도
다음으로 위의 프로그램을 확장하여 각 고유 문자의 빈도를 찾습니다. 빈도의 고유한 값이 1보다 크면 모든 문자가 동일한 빈도를 갖지 않는다는 결론을 내립니다.
예
in_string = "She sells sea shells" dic1 = {} for k in in_string: if k in dic1.keys(): dic1[k]+=1 else: dic1[k]=1 print(dic1) u_value = set( val for udic in dic1 for val in (dic1.values())) print("Number of Unique frequencies: ",len(u_value)) if len(u_value) == 1: print("All character have same frequiency") else: print("The characters have different frequencies.")
출력
위의 코드를 실행하면 다음과 같은 결과가 나옵니다. -
{'S': 1, 'h': 2, 'e': 4, ' ': 3, 's': 5, 'l': 4, 'a': 1} Number of Unique frequencies: 5 The characters have different frequencies.