分页: 1 / 1

发个帖子纪念一下,欢迎大家一起讨论Python

发表于 : 2006-08-25 21:21
gashero
偶比较喜欢Python :lol: ,以前Java也看过很多。希望大家一起讨论。
有空可以去我的博客看看(http://blog.csdn.net/gashero)。偶不习惯于转贴,贴一段自己的程序吧。作Socket服务器的。

代码: 全选

# -*- coding: gbk -*-
from socket import *
import time

localip=gethostbyname(gethostname())

def server():
	s=socket(AF_INET,SOCK_STREAM)
	s.bind((localip,5555))
	s.listen(10)
	print 'Server start'
	while True:
		try:
			print 'waiting connect...'
			c,i=s.accept()
			print 'Client (%s,%d)'%i
			data=c.recv(1000)
			while len(data)!=0:
				print data
				data=c.recv(1000)
			print 'Client closed!'
		except KeyboardInterrupt:
			print 'Keyboard Terminate'
			break
	print 'server ending'
	s.close()
	return

def main():
	server()
	return

if __name__=='__main__':
	main()

发表于 : 2006-08-26 0:17
janusle
python的确不错,我帖一段我写的访问MySQL的类库

代码: 全选

#一个可以操作MySQL数据库的类库
#作者:JanusLe(LeYan)

import MySQLdb

class db:
#构造函数,其中连接了数据库
  def __init__(self  , host , user , passwd):
     try:
        print "Open the Database"
        self.conn = MySQLdb.connect(host , user , passwd)
     except MySQLdb.OperationalError ,error:
        print "Error %d: %s" % (error[0] , error[1])

        
#关闭数据库
  def db_close(self):
      self.conn.close()
      print "close the database"


#使用数据库    
  def db_use(self , name):
    str = "use " + name
    result = self.db_execute_SQL(str)
    return result

#查询数据库
  def db_select(self , name , *arg):
    str = "SELECT * FROM "  + name + self.__str_join__(" " , arg)
    result = self.db_execute_SQL(str)
    return result


#向数据库添加数据
  def db_insert(self , name , *value ):
    str = "INSERT INTO " + name + " VALUES (" +  self.__str_join__("," , value)  + ")"
    result = self.db_execute_SQL(str)
    return result


#删除数据库中的数据
  def db_delete(self , name , ID ):
    str = "DELETE FROM " + name + " WHERE id = " + ID
    result = self.db_execute_SQL(str)
    return result

#修改数据库中的记录
  def db_update(self , name , id , *arg):
    str = "UPDATE " + name + " SET " + self.__str_join__("," , arg) + " WHERE id = " + id
    result = self.db_execute_SQL(str)
    return result

#向数据库中添加表
  def db_create_table(self , name , *arg):
    str = "CREATE TABLE " + name + "(" + self.__str_join__("," , arg) + ")"
    result = self.db_execute_SQL(str)
    return result


#删除数据库中的表    
  def db_drop_table(self , name):
    str = "DROP TABLE " + name
    result = self.db_execute_SQL(str)
    return result


#修改数据库中的表
  def db_alter_table(self , name , type , arg):
    TYPE = ("ADD" , "DROP" , "RENAME")
    if type in TYPE:
      str = "ALTER TABLE " + name + " " + type + " "  + arg
      result = self.db_execute_SQL(str)
    else:
      print "You have an error in your SQL syntax;"
      return False

    return result    
    

#察看表的结构
  def db_describe(self , name):
    str = "DESCRIBE " + name
    result = self.db_execute_SQL(str)
    return result


#执行SQL
  def db_execute_SQL(self , str):
    cursor = self.conn.cursor()
    try:
      print str
      cursor.execute(str)
      self.conn.commit()
      allRecords = cursor.fetchall()
    except MySQLdb.ProgrammingError , error:
      print "You have an error in your SQL syntax;"
      return False
    except MySQLdb.OperationalError , error:
      print "Error %d: %s" % (error[0] , error[1])
      return False

    if allRecords == ():    
      return True
    else:
      return allRecords

      
#用于连接SQL命令
  def __str_join__(self , symbol ,  arg):
    s = " "
    for i in arg:
      if s != " ":
        s += symbol
      s += i    
    return s


    
#用于测试的模块
if __name__=='__main__':
    con = db("localhost" , "root" , "XXXXX")  
    con.db_execute_SQL("CREATE DATABASE books") 
    con.db_use("books")                          
    con.db_create_table("books" , "id int" , "Title  CHAR(20)" , "Author CHAR(20)")   
    con.db_insert("books" , '3' , "'dd'" , '"LeYan"')                       
    con.db_insert("books" , "4" , '"JanusLe"' , '"fff"')                          
    print con.db_select("books")                          
    con.db_delete("books" , "4")                         
    print con.db_select("books")
    con.db_update("books" , "3" , 'Author = "NoName"')          
    print con.db_select("books")                                     
    con.db_alter_table("books" , "ADD" , "tttt varchar(20)")        
    print con.db_describe("books")                                  
    con.db_alter_table("books" , "DROP" , "tttt")
    print con.db_describe("books")
    con.db_close()
[/code]

发表于 : 2008-06-07 20:43
boboppie
good post!!! :D

发表于 : 2008-06-07 20:45
zabbey
我最近也在学呢。

发表于 : 2008-06-09 10:25
flyinflash
asdf

发表于 : 2008-06-09 10:36
xiooli
看python老是没感觉。

发表于 : 2008-06-09 15:08
flyinflash
asdf

发表于 : 2008-06-09 15:17
flyinflash
asdf