파이썬에서 "1,374"또는 "21,000,000"과 같은 문자열을 1374 또는 21000000과 같은 int 값으로 변환하는 가장 깨끗하고 우아한 방법은 무엇입니까?자리 값 쉼표로 숫자 문자열을 정수로 변환하는 방법은 무엇입니까?
7
A
답변
9
정말 어디에서 전화 번호를 얻을지에 따라 다릅니다.
변환하려는 숫자가 사용자 입력에서 나온 경우 locale.atoi()
을 사용하십시오. 그렇게하면 사용자의 설정과 기대치와 일치하는 방식으로 숫자가 파싱됩니다.
다른 형식으로 읽는다면 항상 동일한 형식을 사용하는 파일에서 상황에 따라 int("1,234".replace(",", ""))
또는 int("1.234".replace(".", ""))
을 사용하십시오. 이것은 읽기와 디버그가 쉬울뿐만 아니라 사용자의 로케일 설정에 영향을받지 않기 때문에 파서는 모든 시스템에서 작동합니다.
4
locale.atoi()
으로 설정 한 후 적절한 로케일을 설정하십시오.
2
int("1,374".replace(",",""))
2
>>> s="1,374"
>>> import locale
>>> locale.setlocale(locale.LC_NUMERIC, '')
'en_US.UTF-8'
>>> locale.atoi(s)
1374
관련 문제
- 1. 18 자리 숫자 문자열을 BigInteger로 변환하는 방법?
- 2. 숫자 문자열을 정수로 변환
- 3. 속도 템플릿에서 문자열을 정수로 변환하는 방법은 무엇입니까?
- 4. iMacros에서 문자열을 정수로 변환하는 방법은 무엇입니까?
- 5. Oxygene에서 문자열을 정수로 변환하는 방법
- 6. 추록 : 문자열을 정수로 변환하는 방법?
- 7. 중첩 목록에 매핑 기능을 사용하고 문자열을 정수로 변환하는 방법은 무엇입니까?
- 8. 달 이름이 들어있는 문자열을 정수로 변환하는 방법은 무엇입니까?
- 9. 쉼표로 구분 된 문자열을 배열로 변환하는 방법은 무엇입니까?
- 10. 문자열을 알 수없는 숫자 유형으로 변환하는 올바른 방법은 무엇입니까?
- 11. 문자열을 배열로 변환하는 방법은 무엇입니까?
- 12. 문자열을 사용하지 않고 정수를 숫자 배열로 변환하는 방법은 무엇입니까?
- 13. C에서 char을 정수로 변환하는 방법은 무엇입니까?
- 14. 바이너리 파일을 Long 정수로 변환하는 방법은 무엇입니까?
- 15. 특정 형식의 숫자를 정수로 변환하는 방법은 무엇입니까?
- 16. 문자열을 정수로 인코딩 .NET
- 17. MySQL에 쉼표로 문자열을 삽입하는 방법은 무엇입니까?
- 18. csv의 값에 쉼표로 문자열을 내보내는 방법은 무엇입니까?
- 19. NSString - 2 자리 숫자
- 20. 문자열을 NSDate로 변환하는 방법은 무엇입니까?
- 21. 정수로 반올림 한 숫자
- 22. 람다 문자열을 십진수로 변환하는 방법은 무엇입니까?
- 23. 이스케이프를 사용하여 구분 된 파이프를 쉼표로 구분하여 변환하는 방법은 무엇입니까?
- 24. 숫자 또는 기호를 숫자로 변환하는 방법은 무엇입니까?
- 25. float를 정수로 변환하는 방법?
- 26. iPhone - 소수점 7 자리 숫자 형식으로 NSDictionary에 이중 값 저장
- 27. PHP : 쉼표로 숫자 문자열 서식을 지정하십시오.
- 28. XRChart : 숫자 축 레이블을 정수로 설정하는 방법은 무엇입니까?
- 29. 오라클에서 문자열을 정수로 변환
- 30. 포인터 문자열을 정수로 변환합니다.
한 일부 로케일에서 쉼표를 소수점 구분자로 사용되기 때문에 기간이 수천 구분의 역할을하면서는, 단지 빈 문자열 쉼표를 교체하는 것보다 낫다는 등 수백만 – Tarydon
무엇을 따라 다름 당신은 파싱하려고합니다. 사용자 입력? 또는 고정 된 형식의 파일 (예 : 기존 시스템에서 가져온 CSV)은 무엇입니까? 같지 않아. 아래 내 대답을 참조하십시오. – ibz