2016-03-18 45 views
0

我正在创建一个基于数据库中的用户首字母列的选项菜单,以便用户可以选择他的首字母缩写,我的脚本会将其记录到数据库。如何从数据库列的python数组中选择元素

我坚持一个简单的问题,但我不知道要问的问题找到了答案:

#! /usr/bin/env python 

import os 
import sys 
import qrtools 
import pyqrcode 
import datetime as dt 
import MySQLdb 
import MySQLdb as mdb 

def tape_recovery_connect(): 
    con = mdb.connect('mydb.my.server.com', 'user', 'password', 'database') 
    return con 

def close_tape_recovery(): 
    con.close 

con = tape_recovery_connect() 
with con: 

    cur = con.cursor() 
    cur.execute("""SELECT UserInit FROM users""") 
    close_tape_recovery() 
    count = cur.rowcount 
    print count 
    rows = cur.fetchall() 
    for k, row in enumerate(rows): 
#  print ("row is %s" % (row)) 
     print (str(k+1) + ". " + "".join(row)) 


print ("Select your initials 1 - %i" % (count)) 
user_num = int(raw_input(": " )) 
user = row[user_num-1] 
print user 

当我运行程序我得到主要是我想:

  1. USER1
  2. USER2
  3. USER3
  4. USER4
  5. USER5
  6. USER6
  7. USER7
  8. USER8

选择您的姓名缩写1 - 8

:2

( '用户2')

但是我无法弄清楚如何得到我想要的而没有括号和其他东西。

我也不知道为什么formform引用我的输出将最后三行全部放在USER8之后,但我想这会得到一般想法。

+0

http://stackoverflow.com/questions/22412258/get-the-first-element-of-each-tuple-in-a-list-in-python – AK47

+0

如果您打印 '行' 变量,数据应该看起来类似于那个问题中的数据集,其中elt1是'USER1',而elt2是空的。看起来像一个类似的问题。 – AK47

回答

0

你的user是一个带有1个元素的元组,只是得到第一个元素。

print(user[0])