- 浏览: 19427 次
- 性别:
- 来自: 北京
最新评论
-
ph4nut:
很好,發送raw_socket數據也會用到這個函數.
python的socket发送C结构体
文章列表
加入了stackless微线程,速度大大的提高!!#coding=gb2312
import os
import fnmatch
import wx
import re
import time
import stackless
def get_allfile_name(path): #获得全部文件夹的文件名
l=[]
for p,d,f in os.walk(path):
for i in f:
l.append(os.path.join(p,i))
return l
class ...
- 2009-07-01 13:52
- 浏览 1505
- 评论(0)
公司因为测试需要,通过UDP发送C的一个结构体做测试。
这里用到的struct这个模块
结构体是这样的
typedef struct _vustr{
DWORD dwStrHeader;
DWORD dwDataLen;
DWORD dwDevID;
DWORD dwChnHLSD;
int nVUValue;
}VUSTR;
udp发送代码
#coding:gb2312
import socket
import os
import struct
dwStrHeader=33803
dwDataLen=12
...
- 2009-05-23 11:14
- 浏览 7471
- 评论(1)
搜集一些语法糖
去掉列表中每个元素头尾的空格
>>> freshfruit = [' banana', ' loganberry ', 'passion fruit ']
>>> [str.strip() for str in freshfruit]
['banana', 'loganberry', 'passion fruit']
把列表中,大于3的元素,乘以2
>>> vec = [2, 4, 6]
>>> [2*x for x in vec if x > 3]
...
- 2009-05-07 00:10
- 浏览 1609
- 评论(0)
UDP接收端超时设置
#coding:gb2312
import socket,sys
import time
s=socket.socket(socket.AF_INET,socket.SOCK_DGRAM)
s.setsockopt(socket.SOL_SOCKET,socket.SO_REUSEADDR,1)
IP=socket.gethostbyname(socket.gethostname())
s.settimeout(30) #设置超时
s.bind((IP,1080))
print "等待数据中。。。。"
while 1: ...
- 2009-05-01 19:54
- 浏览 4548
- 评论(0)
定义函数
def h():
print "hello"
def h2():
print "heoooo"
导入微线程:
import stackless
#指定任务
t1=stackless.tasklet(h)()
t2=stackless.tasklet(h2)()
t1.run()
结果:
hello
heoooo
#指定任务
t1=stackless.tasklet(h)()
t2=stackless.tasklet(h2)()
t2.run()
结果:
heoooo
- 2009-05-01 18:17
- 浏览 1134
- 评论(0)
ctypes是一个Python模块,使用他可以在Python中创建和操作C语言的数据类型,这样可以在动态链接库中传递参数到C的函数中去。
Great piece of work. ctypes可以在windows/linux等多个平台上使用,甚至支持Windows上的COM开发!
from ctypes import *
M = windll.user32.MessageBoxA
M(0, '1', '2', 0) # 调用函数
来个win32api的原汁原味
import win32api
import win32con
win32api.MessageBox(0,'tit ...
- 2009-04-28 18:50
- 浏览 1268
- 评论(0)