Comment puis-je afficher une valeur sans utiliser de crochets, de virgules ou de crochets ?
P粉726133917
P粉726133917 2023-12-31 11:35:12
0
2
519

Je veux juste imprimer la valeur sans crochets, virgules ou parenthèses. J'utilise MySQL avec python et mysql.connector.

Lorsque j'exécute ce code, j'obtiens "('esrvgf',)". Mais je veux juste "esrvg".

import mysql.connector

mydb = mysql.connector.connect(
  host="localhost",
  user="root",
  password="password",
  database ="mydatabase"
)

cursor = mydb.cursor()


sql = "select nick from users where ipaddress = '192.168.1.4'"

cursor.execute(sql)

myresult = cursor.fetchall()

for x in myresult:
  print(x)

P粉726133917
P粉726133917

répondre à tous(2)
P粉156532706

En utilisant .fetchall( ) D'après la documentation, vous ne retournerez pas un seul élément, même s'il n'y en a qu'un :

Pensez donc à utiliser :

for x in myresult:
  for y in x:
     print(x)

Ou si vous êtes sûr qu'il s'agit d'un seul élément :

for x in myresult:
   print(x[0])
P粉883973481

cursor.fetchall() 返回元组列表(请参阅此问题),而不是字符串。如果你尝试打印一个元组,Python 将添加括号,如果你尝试打印一个列表,Python 将添加括号。您所需要做的就是使用 x[0] Imprimez le premier élément. Comme ça :

for x in myresult:
  print(x[0])

Vous pouvez également utiliser * 运算符将元组的每个元素作为参数传递给 print(). Comme ça :

for x in myresult:
  print(*x)
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal