Это часть более крупной программы. Вот что я пытаюсь сделать.Как проверить, является ли число числом, когда оно является «строкой»?
- Передайте предложение методу сканирования.
- Есть предложение содержать номера.
- Разделите предложение на разные термины.
- добавить в список кортеж, первое выражение в кортеже является типом вещи, в которое входит слово или предложение, второе - это слово или число.
Вот что я пытаюсь:
def scan(self, sentence):
self.term = []
for word in sentence.split():
if word in direction:
self.term.append(('direction', word))
elif word in verbs:
self.term.append(('verb', word))
elif word in stop:
self.term.append(('stop', word))
elif word in nouns:
self.term.append(('noun', word))
elif type(int(word)) == 'int':
self.term.append(('number', int(word)))
else:
self.term.append(('error', word))
return self.term
print lexicon.scan('12 1234')
Это метод в классе, оператор печати снаружи. Часть меня беспокоит и возникли проблемы с это:
elif type(int(word)) == int:
self.term.append(('number', int(word)))
Он должен работать для любого натурального числа [1, бесконечность)
Edit: я бегу в проблему, когда я пытаюсь сканировать ('ASDFASDFASDF')
, что вы точно? type (int (word)) == int ??? вы конвертируете его в int, а затем проверяете, является ли он int? –
Дубликат http://stackoverflow.com/questions/5424716/python-how-to-check-if-input-is-a-number-given-that-input-always-returns-stri http: // stackoverflow .com/вопросы/16488278/how-to-check-if-a-variable-is-a-integer-or-a-string из http://stackoverflow.com/questions/354038/how-do-i-check -if-a-string-is-a-number-in-python из ... –