Python: 'int' не подлежит расшифровке [duplicate]

$query = "SELECT Name,Mobile,Website,Rating FROM grand_table order by 4";

while( $data = mysql_fetch_array($query))
{
    echo("<tr><td>$data[0]</td><td>$data[1]</td><td>$data[2]</td><td>$data[3]</td></tr>");      
}

Вместо использования запроса WHERE вы можете использовать этот запрос ORDER BY. Это намного лучше, чем это для использования запроса.

Я выполнил этот запрос и не получаю никаких ошибок, таких как параметр или логический.

22
задан Kevin Guan 11 November 2015 в 10:44
поделиться

6 ответов

Проблема в строке,

int([x[age1]])

Что вы хотите

x = int(age1)

Вам также нужно преобразовать int в строку для вывода ...

print "Hi, " + name1+ " you will be 21 in: " + str(twentyone) + " years."

Полный сценарий выглядит,

name1 = raw_input("What's your name? ")
age1 = raw_input ("how old are you? ")
x = 0
x = int(age1)
twentyone = 21 - x
print "Hi, " + name1+ " you will be 21 in: " + str(twentyone) + " years."
24
ответ дан Charles 25 August 2018 в 20:15
поделиться

Когда вы вводите x = 0, который создает новую переменную int (имя) и присваивает ей нуль.

Когда вы вводите x[age1], который пытается получить доступ к age1 й записи, как будто x были массивом.

40
ответ дан Jonathon Reinhart 25 August 2018 в 20:15
поделиться

Что вы пытаетесь сделать здесь: int([x[age1]]) ?? Это не имеет смысла.

Вам просто нужно указать возрастный вход как int:

name1 = raw_input("What's your name? ")
age1 = raw_input ("how old are you? ")
twentyone = 21 - int(age1)
print "Hi, %s you will be 21 in: %d years." % (name1, twentyone)
1
ответ дан juliomalegria 25 August 2018 в 20:15
поделиться

Когда вы пишете x = 0, x является int ... поэтому вы не можете делать x[age1], потому что x - int

6
ответ дан samayo 25 August 2018 в 20:15
поделиться
name1 = input("What's your name? ")
age1 = int(input ("how old are you? "))
twentyone = str(21 - int(age1))

if age1<21:
    print ("Hi, " + name1+ " you will be 21 in: " + twentyone + " years.")

else:
    print("You are over the age of 21")
0
ответ дан Thomas 25 August 2018 в 20:15
поделиться

Вам нужно сначала преобразовать age1 в int, чтобы он мог сделать минус. После этого верните результат в строку для отображения:

name1 = raw_input("What's your name? ")
age1 = raw_input ("how old are you? ")
twentyone = str(21 - int(age1))
print "Hi, " + name1+ " you will be 21 in: " + twentyone + " years."
0
ответ дан 勿绮语 25 August 2018 в 20:15
поделиться
Другие вопросы по тегам:

Похожие вопросы: