发上等愿,结中等缘,享下等福;择高处立,寻平处住,向宽处行

Brick walls are there for a reason :they let us prove how badly we want things

代码改变世界

Python:判断文本中的用户名在数据库中是否存在,存在返回1,不存在返回0

2014-07-11 22:03  kowme  阅读(5194)  评论(0编辑  收藏  举报

下面是我写的python的一个小脚本,作用是:判断文本中的用户名在数据库中是否存在,存在返回1,不存在返回0.用的是MySQL数据库。


要注意的是:strip函数的使用,该函数的作用是去除字符串两端多余的whitespace。

所以strip的作用肯定不是像书上说的去除字符串两端多余空格。

 

查了一下文档说

Return a copy of the string with the leading and trailing characters removed. The chars argument is a string specifying the set of characters to be removed. If omitted or None, the chars argument defaults to removing whitespace. 

该函数的作用是去除字符串两端多余的whitespace

The most common whitespace characters may be typed via the space bar or the tab key. Depending on context, a line-break generated by the return or enter key may be considered whitespace as well.

whitespace应该是空格,Tab和换行的统称,而不仅仅是空格。

ok,贴代码吧!

 

!/usr/bin/python
#!Filename = username_indb.py
 
import MySQLdb
try:
    conn=MySQLdb.connect(host = "localhost", user = "root", passwd ="123@qwe",db = "test",port = 3306)
    cur=conn.cursor()
    cur.execute("select username from userinfor")
    result = cur.fetchall()
    cur.close()
    conn.close()
except MySQLdb.Error,e:
    print "MySQLdb error %s :%s" %(e.args[0],e.args[1])
data=[]
#print result
for i in range(0,len(result)):
    data.append(result[i][0])
#print data
 
 
for line in open("C:\Python27\scriptKing\username.txt"):
    if line.strip() in data:
        #tips:'line.strip()' is used to  remove '/n'
        print line,1
    else:
        print line,0

It's not who you are underneath, it's what you do that defines you

Brick walls are there for a reason :they let us prove how badly we want things