python学习--创建模块

昨天做了python客户端和服务器端通信,并把接收到的信息写到数据库,因为对数据库进行操作是个经常调用的行为,所以我想把调用数据库的操作写成一个module来给其它python程序调用,所以将昨天的服务器端程序拆分为两个文件:

1、主程序python.py

#!/usr/bin/env  python
import socket
import json
import connmysql
s = socket.socket(socket.AF_INET,socket.SOCK_STREAM,0)
host = ‘‘
port = 1234
s.bind((host,port))
s.listen(3)
while True:
        client,ipaddr = s.accept()
        print "Got a connect from %s" %str(ipaddr)
        data=client.recv(1024)
        print data
        metadata=json.loads(data)
        try:
                ip = metadata[0][‘ip‘]
                hostname = metadata[1][‘hostname‘]
                try:
                        connmysql.ip = ip
                        connmysql.hostname = hostname
                        connmysql.mysql_Newhost(ip,hostname)
                        client.send("echo:"+data)
                        client.close()
                except:
                        client.send("Database ERROR")
                        client.close
        except:
                client.send("Data ERROR")
                client.close()

2、是数据库操作的module:

"""
this is a connect mysql module
"""
import socket
import MySQLdb
def mysql_Newhost(ip,hostname):
        conn = MySQLdb.connect(host="localhost",user="root",passwd="123456",db="python",unix_socket="/tmp/mysql.sock")
        cursor=conn.cursor()
        sql = "insert into python values(%s,%s)"
        print sql
        param = (ip,hostname)
        cursor.execute(sql,param)
        conn.commit()
        cursor.close()
        conn.close()
__version__ = ‘0.1‘

python学习--创建模块,布布扣,bubuko.com

时间: 2024-10-21 11:17:59

python学习--创建模块的相关文章

Python学习--Selenium模块学习(2)

Selenium的基本操作 获取浏览器驱动寻找方式 1. 通过手动指定浏览器驱动路径2. 通过 `$PATH`环境变量找寻浏览器驱动 可参考Python学习--Selenium模块简单介绍(1) 控制浏览器访问URL browser.get(https://www.baidu.com/)   find系列函数定位元素 - `find_element_by_xxx` 返回第一个符合条件 `WebElement` - `find_elements_by_xxx` 返回符合条件所有元素包含了`WebE

Python学习--Selenium模块

1. Python学习--Selenium模块介绍(1) 2.Python学习--Selenium模块学习(2) 其他: 1. Python学习--打码平台 原文地址:https://www.cnblogs.com/ftl1012/p/seleniumAll.html

Python学习:模块(module)

为了编写可维护的代码,我们把很多函数分组,分别放到不同的文件里,这样,每个文件包含的代码就相对较少,很多编程语言都采用这种组织代码的方式.在Python中,一个.py文件就称之为一个模块(Module). 为什么使用模块? 和C语言类似: 1.大大提高代码的可维护性: 2.很多功能代码可以复用,可以被第三方引用: 3.不同的模块拥有不同的命名空间,可以避免函数名.变量名冲突. 要是不同的人编写的模块名相同怎么办?为了避免冲突,Python引入了按目录来组织模块的方法,成为包(package).

PYTHON学习第二模块 python内置模块介绍

1 >>> import time 2 >>> time.time() 3 1491064723.808669 4 >>> # time.time()返回当前时间的时间戳timestamp(定义为从格林威治时间1970年01月01日00时00分00秒起至现在的总秒数)的方法,无参数 5 >>> time.asctime() 6 'Sun Apr 2 00:39:32 2017' 7 >>> # time.asctim

Python学习笔记-模块

模块: 顶层文件(也是模块文件) 模块文件 模块在物理形式上表现为.py结尾的代码文件 Python中,模块本身也是对象,所以模块也有变量,函数,类 在一个模块的顶层定义的所有变量都在被导入时成为了被导入模块的属性 查看标准库模块: help('modules') 顶层文件:包含了程序的主要控制流程 模块文件:为顶层文件或其他模块提供各种功能组件 import module [,module1[,module2]]语句    导入模块 导入指定的整个模块,包括生成一个以模块名命名的名称空间 导入

Python学习笔记-模块介绍(三)-模块包和搜索路径

一个python文件就是一个模块,使用独立的命名空间,但实际使用过程中单单用模块来定义python功能显然还不够.因为一个大型的系统几千上万个模块是很正常的事情,如果都聚集在一起显然不好管理并且有命名冲突的可能,因此python中也出现了一个包的概念. 一.python中的包介绍 包是通过使用"点模块名称"创建Python模块命名空间的一种方法.列如,模块名称 A.B 表示一个在名为 A的包下的名为B的子模块.就像使用模块让不同模块的作者无需担心彼此全局变量名称(冲突)一样,点模块名称

python学习-smtplib模块

python的stmplib模块可以实现邮件的发送功能,可以模拟一个smtp客户端.在python2.3或者更高版本默认自带smtplib模块,无需额外安装. 一.smtplibi模块的常用类与方法 smtp类定义:smtplib([host[,port[,local_hostname[,timeout]]]),作为smtp的构造函数,功能是与smtp服务器建立连接,在连接成功后,就可以向服务器发送相关请求,比如登录.校验.发送.退出等.host参数为远程smtp主机地址,比如smtp.163.

Python学习(22):模块

转自 http://www.cnblogs.com/BeginMan/p/3183656.html 一.模块基础 1.模块 自我包含,且有组织的代码片段就是模块 模块是Pyhon最高级别的程序组织单元,它将程序代码和数据封装起来以便重用.实际的角度,模块往往对应Python程序文件. 每个文件都是一个模块,并且模块导入其他模块之后就可以使用导入模块定义的变量名.模块可以由两个语句和一个重要的内置函数进行处理. import: 使客户端(导入者)以一个整体获取一个模块. from:容许客户端从一个

python学习-OS模块

OS模块是python内建模块,主要是对大量文件和大量路径进行操作 os.sep:取代操作系统特定的路径分隔符 os.name:指示你正在使用的工作平台.比如对于Windows,它是'nt',而对于Linux/Unix用户,它是'posix'. os.getcwd:得到当前工作目录,即当前python脚本工作的目录路径. os.getenv()和os.putenv:分别用来读取和设置环境变量 os.listdir():返回指定目录下的所有文件和目录名 os.remove(file):删除一个文件