사용자의 문자열 입력이 숫자(예: -1
, 0
, 1
등)인지 어떻게 확인하나요?
user_input = input("Enter something:")
if type(user_input) == int:
print("Is a number")
else:
print("Not a number")
입력`은 항상 문자열을 반환하므로 위의 방법은 작동하지 않습니다.
내 생각엔 그게 you& # 39 이것은 방법을 찾고 있습니다; d '이누메리크 ()' ([설명서 python3.x] [1]).
>>>a = '123'
>>>a.isnumeric()
true
이렇게 하면 된다.
[1]: https://docs.python.org/3/library/stdtypes.html # 스트리아누메리크
편집됩니다: 아래 코드를 사용할 수도 있습니다) 도 제외어 숫자나 해당 여부를 알아내기 위해 이
import re
num_format = re.compile("^[\-]?[1-9][0-9]*\.?[0-9]+$")
isnumber = re.match(num_format,givennumber)
if isnumber:
print "given string is number"
특정 조건을 데이터베이스에구성원을 포맷하십시오 변경하십시오 수도 있습니다. 내가 보는 이 게시물로의 조금 다른 답을 찾는 사람이 너무 라테스버트 ᄋ "이번 수 있습니다:) . let me 다운로드되었는지 아무것도 잘못 지정된 코드입니다.
특별히 할 수 있는 경우 int 또는 float " 시도하시겠습니까 int" 아닙니다. 또는 " float", 아닙니다.
user_input = ''
while user_input is not int:
try:
user_input = int(input('Enter a number: '))
break
except ValueError:
print('Please enter a valid number: ')
print('You entered {}'.format(a))
작업해야 할 경우에만 가장 세련된 솔루션이므로 I& # 39 는 정수, 다음 (), ve seen " 오이디기트 "; 방법:
a = ''
while a.isdigit() == False:
a = input('Enter a number: ')
print('You entered {}'.format(a))
이미 제안한 가장 세련된 솔루션뀉뀉뀉뀉 약간만이라도
a=123
bool_a = a.isnumeric()
It 에 대한 일반적인 정수 및 제외어 운포르투나텔리 doesn& # 39 의 부동 소수점 값, 모두 빗나갔다. A& # 39, & # 39 점 경우 여부를 확인할 수 있다. 는 일반 번호임 넘어 정수 i& # 39; d 권고하십시오 사용할 수 있는 한, 다음과 같은 모든 종류의 부동 소수점 및 정수:). 다음은 테스트:
def isanumber(a):
try:
float(repr(a))
bool_a = True
except:
bool_a = False
return bool_a
a = 1 # integer
isanumber(a)
>>> True
a = -2.5982347892 # general float
isanumber(a)
>>> True
a = '1' # actually a string
isanumber(a)
>>> False
효율적인 바래요:)
def checkIntValue():
'''Works fine for check if an **input** is
a positive Integer AND in a specific range'''
maxValue = 20
while True:
try:
intTarget = int(input('Your number ?'))
except ValueError:
continue
else:
if intTarget < 1 or intTarget > maxValue:
continue
else:
return (intTarget)
natural: [0, 1, 2. ]
파이썬 2
it_is = unicode(user_input).isnumeric()
파이썬 3
it_is = str(user_input).isnumeric()
integer: [-., - 2 - 1, 0, 1, 2]
try:
int(user_input)
it_is = True
except ValueError:
it_is = False
float: [-., - 2 - 1.0.1, -, - 1, 0, 1, 1.0.1 0.0.1 0.0.1. ,]
try:
float(user_input)
it_is = True
except ValueError:
it_is = False
왜안돼요 숫자로 입력입니다 나누기? 이렇게 수행됨 전지전능하시니라 네거티브, 유동합니다, 및 제외어 유동합니다. 또한 공백을, 제로.
numList = [499, -486, 0.1255468, -0.21554, 'a', "this", "long string here", "455 street area", 0, ""]
for item in numList:
try:
print (item / 2) #You can divide by any number really, except zero
except:
print "Not A Number: " + item
결과:.
249
-243
0.0627734
-0.10777
Not A Number: a
Not A Number: this
Not A Number: long string here
Not A Number: 455 street area
0
Not A Number:
그러나 그 사람이 갖고 있는 데 매우 그러니까말이야 이 말 하는 데 6 시간 분명 이 초과됩니다. (그게 내가 한):
이 작품은 원활한 실행을: (확인합니다 () 은 정수 또는 부동 소수점 입력 또는 경우 모든 문자 입력 / 검사)
a=(raw_input("Amount:"))
try:
int(a)
except ValueError:
try:
float(a)
except ValueError:
print "This is not a number"
a=0
if a==0:
a=0
else:
print a
#Do stuff
valid = [str(i) for i in range(-10,11)] # ["-10","-9...."10"]
이제 계속 요구할 수 없는 아웃하기로 나열하십시오 질문:
p = input("Enter a number: ")
while p not in valid:
p = input("Not valid. Try to enter a number again: ")
마지막으로 변환하시겠습니까 int (이로 인해 작동합니까 목록에서만 문자열로 정수 포함되어 있습니다.
p = int(p)
다음은 확인하는 간단한 함수를 입력입니다 INT 및 범위. # 39, & # 39 임무야, 되돌려줍니다 True&. # 39, & # 39 는 정수 사이의 1-100 입력입니다 경우 False&;; 그렇지 않으면
def validate(userInput):
try:
val = int(userInput)
if val > 0 and val < 101:
valid = True
else:
valid = False
except Exception:
valid = False
return valid
난 또 실행했음 오늘 아침 에 대한 구체적인 요청에 대한 응답을 받을 수 있으므로 사용자와 문제를 내 입력하십시오. 비사양 정수 정수.
이 대회는 솔루션으로 됐지 내가 원하는 답을 제대로 가져다줄래요 강제로.
player_number = 0
while player_number != 1 and player_number !=2:
player_number = raw_input("Are you Player 1 or 2? ")
try:
player_number = int(player_number)
except ValueError:
print "Please enter '1' or '2'..."
난 전에 이를 시도하시겠습니까 프레젠테이션이든 예외가 있다. 기술서임을 사용할 때 나는
player_number = int(raw_input("Are you Player 1 or 2? ")
사용자가 입력한 " J"; 또는 다른 비사양 정수 문자. 된다고 아웃해야 여부를 확인할 수 있는 가장 받으라니깐 raw 용량임 입력, 정수, 이후 기초형상 입력입니다 변환하지는 변환한 후.
다음은 가장 단순한 해결책:
a= input("Choose the option\n")
if(int(a)):
print (a);
else:
print("Try Again")