2014-09-14 4 views
-1

사용자가 숫자 [< 0]을 입력하고 [문자 없음]을 허용하도록 만드는 방법을 찾으려고합니다. 누군가 내가 이것을 어떻게 설정할 것인지 알려줄 수 있습니까? try/catch 블록을 설정하려고 시도했지만 오류가 계속 발생합니다.파이썬 사용자는 부동 소수점 숫자 만 입력해야합니다.

edgeone = input("Enter the first edge of the triangle: ") 
+0

Python 2 또는 Python 3을 사용하고 있습니까? – OregonTrail

+0

[python 정규식 모듈] (https://docs.python.org/2/howto/regex.html)을 사용하는 것이 좋습니다. –

+0

나는 2 주간의 경험으로 만 파이썬에 익숙하다. 나는이 try/catch를 설정하는 정확한 방법을 이해하지 못하거나 어쩌면 사용해야하고 if/else를 사용해야한다. 그래서 시각적으로 누군가가 이것을 설정하는 방법을보고 싶어하기 때문에 도움을 요청했습니다. – user2981423

답변

0

난 당신이 숫자 만> 0을 원한다고 생각, 또는 당신이 원하는 수행

try: 
    value = int(raw_input("Enter your number:")) 
    if not (value < 0): 
     raise ValueError() 
except ValueError: 
    print "you must enter a number <0 " 
else: 
    print value #or something else 

또한이 질문은 이미 여기에 답이있다 0보다 작습니까? 어쨌든이 작업을 수행하려면 while 루프 내에서 try/except를 사용할 수 있습니다.

내가 사용하고있는 것으로 생각되는 Python 3의 경우?

goodnumber = False 
while not goodnumber: 
    try: 
     edgeone = int(input('Enter the first edge of the triangle:')) 
     if edgeone > 0: 
      print('thats a good number, thanks') 
      goodnumber = True 
     else: 
      print('thats not a number greater than 0, try again please') 
    except ValueError: 
     print('Thats not a number, try again please') 

희망이 도움이됩니다.

+0

답장을 보내 주셔서 감사합니다. 예, 이것은 매우 도움이됩니다. – user2981423