사용자에게 파일 이름을 묻는 메시지를 열고, 파일을 열어 을 열고, 알파벳의 각 문자가 파일. 당신은 단순히 편지의 주파수를 계산하려면ord()에서 사용할 목록에서 문자를 읽을 수 없습니다.
#!/usr/local/bin/python
name=raw_input("Enter file name: ")
input_file=open(name,"r")
list=input_file.readlines()
count = 0
counter = 0
for i in range(65,91): #from A to Z
for j in range(0,len(list)):
if(i == ord(j)): #problem: ord() takes j as an int here, I want it to get the char at j
count = count + 1
print i, count
count = 0
for k in range(97,123): #from a to z
for l in range(0,len(list)):
if(k == ord(l)): #problem: ord() takes l as an int here, I want it to get the char at l
counter = counter + 1
print k, counter
count = 0
그래 내가 그 일을 시도했지만 어떤 이유로 나는이 오류가 발생합니다 : 역 추적 (가장 최근 통화 최종) : 경우 (내가 == ORD에서, 파일 "prob9.py", 라인 10 (list [j])) : TypeError : ord() 예상 문자, 길이 11의 문자열 –
user1836292
@ user1836292, 내 대답을 업데이트했습니다. – sshashank124
'' '.join (in_text)'를 쓰는 대신에 처음에는'input_file.read()'를 사용하십시오. –