2014-11-04 3 views
0

Tkinter의 텍스트 위젯에 입력 할 때 사용자 인덱스 위치를 가져 와서 변수에 저장하는 프로그램에서 작업하고 있습니다. 그러나 인덱스가 1.20 일 때 1.2로 끝납니다. 인덱스 1.20이있는 변수가 1.20으로 유지되는지 확인하는 방법이 있습니까?파이썬 Tkinter에서 숫자가 반올림되는 것을 방지하는 방법

나는 float()를 사용해 보았습니다. 하지만 그건 효과가없는 것 같습니다.

아이디어가 있으십니까?

그리고 미리 감사드립니다.

+0

'1.20 == 1.2 '인데'1.2'보다는'1.20'이 필요한 이유는 무엇입니까? – jonrsharpe

+0

@jonrsharpe Tkinter 텍스트 위젯을 사용할 때 1.20은 위치 (첫 번째 행 20 번째 열)를 나타냅니다. 1.2는 첫 번째 행의 두 번째 열입니다. – 0Cool

+2

두 개의 반쪽을 따로 저장하지 않는 이유는 무엇입니까? 'row, col = map (int, val.split ("."))'? 문제를 나타내는 코드의 [minimal example] (http://stackoverflow.com/help/mcve)을 제공 할 수 있습니까? – jonrsharpe

답변

2

해결책은 간단합니다. 숫자가 아니기 때문에 색인을 숫자로 취급하지 마십시오. 그것은 마치 숫자처럼 보이는 문자열입니다. 값을 반올림하는 코드 (또는 후행 0을 자르는 코드)가 있으면 숫자로 처리 할 수 ​​있습니다.

+0

하지만 나중에 참조해야합니다. 그래서 위치에 태그를 추가 할 수 있습니다. – 0Cool

+0

@ 0Cool : 그건 중요하지 않습니다. 그것은 숫자가 아니며, 그것은 문자열입니다. 문자열을 저장하고 나중에 참조 할 수 있습니다. 이는 값을 처리하는 방법과 관련이 없습니다. 숫자로만 사용할 수는 없습니다. 문자열로 사용하거나 두 개의 숫자로 나눌 수 있지만 인덱스 전체를 부동 소수점 숫자로 처리 할 수는 없습니다. –