파이썬 ord() 함수 질문 ㅠㅠ
파이썬 ord() 함수 질문 해결 부탁드려요 ㅠㅠ
문제는 time() 함수를 사용해서 A - Z 를 무작위로 출력해야하는 겁니다
문제는 마지막 줄의 ord를 삭제해주면 해당하는 아스키 코드 숫자값으로 출력이 잘 됩니다.
근데 ord를 써주면 아래와 같은 오류가 나네요 ㅠ
TypeError: ord() expected a character, but string of length 2 found
아래는 코드입니다 해결부탁드려요 ㅠㅠ
import time
num = round(time.time())
num %= 96
while num <= 65:
num = round(time.time())
num %= 96
num = str(num)
print(ord(num))
55글자 더 채워주세요.
1개의 답변이 있어요!
- import time num = round(time.time()) num %= 96 while num <= 65: num = round(time.time()) num %= 96 num = str(num) print(ord(num))
결론은 문자가 나와야 하는거죠?
ord 명령은 글자 'a' 를 97 같은 아스키값(숫자)으로 변환해주는것이구요
이와 반대로 숫자 97을 문자 'a'로 변환해주는게 chr 명령입니다
그래서 위 소스에
print(ord(num)) 를
print(chr(num)) 로 바꿔서 실행하시면 글자들이 쫙~~하고 잘 나올것입니다^^
*** 참고로 저는 파이션 전문가가 아닙니다
*** 하지만 1가지 언어를 잘하신다면, 단순 메뉴얼 보고도 아~ 이럴때는 이렇게 적용하면 되는구나 하고 알게 됩니다
그러므로 제가 말씀드리고 싶은건 한가지 언어만 잘하시면? 차후에 다른 언어를 사용하여 프로그램 개발을 하게 될때
충분히 금방 적응하여 개발할 수 있을것입니다