相关疑难解决方法(0)

python struct.pack():在列表或元组中打包多个数据

假设我有一个listtuple包含数字的类型long long,

x = [12974658, 638364, 53637, 63738363]
Run Code Online (Sandbox Code Playgroud)

如果想struct.pack单独使用它们,我必须使用

struct.pack('<Q', 12974658)
Run Code Online (Sandbox Code Playgroud)

或者如果我想做多个,那么我必须像这样明确地提到它

struct.pack('<4Q', 12974658, 638364, 53637, 63738363)
Run Code Online (Sandbox Code Playgroud)

但是,我如何在声明中listtuple内部插入项目struct.pack.我尝试使用这样的for循环.

struct.pack('<4Q', ','.join(i for i in x))
Run Code Online (Sandbox Code Playgroud)

得到错误说expected string, int found,所以我将包含类型的列表转换intstr,现在包装它们变得复杂得多.因为整个列表被转换为字符串(就像一个句子).

截至目前我正在做一些事情

binary_data = ''
x = [12974658, 638364, 53637, 63738363]
for i in x:
    binary_data += struct.pack('<Q', i)
Run Code Online (Sandbox Code Playgroud)

我打开包装就像

struct.unpack('<4Q', binary_data)
Run Code Online (Sandbox Code Playgroud)

我的问题:有没有更好的方法,比如我可以直接指出listtuplestruct.pack声明中,或者可能是一个班轮?

python struct list

3
推荐指数
1
解决办法
6932
查看次数

python中的指针?

当我试图弄清楚在Python中使用imp.load_module时,我得到了以下代码(原始页面).这是我第一次看到在Python中使用*,有些指针就像是东西吗?

提前致谢

import imp
import dbgp
info = imp.find_module(modname, dbgp.__path__)
_client = imp.load_module(modname, *info)
sys.modules["_client"] = _client
from _client import *
del sys.modules["_client"], info, _client
Run Code Online (Sandbox Code Playgroud)

python pointers

2
推荐指数
1
解决办法
669
查看次数

接受函数参数的返回值

所以我试图使用一个返回值的函数,但我希望这些值返回到一个不同的函数.我需要的一个例子如下.

def returner():
    x=1
    y=2
    z=3
    return x,y,z
def tester(arg1,arg2,arg3):
    print arg1,arg2,arg3

tester(returner())
Run Code Online (Sandbox Code Playgroud)

我想要它做的是打印1,2,3然而我无法用它来做这件事,因为它说"测试者需要3个参数,1个给定." 我有什么遗失或者这是不可能的吗?

python python-2.7

2
推荐指数
1
解决办法
110
查看次数

python从元组中获取两个整数参数

这只是问题的一部分.它有错误,在运行它时缺少1个必需的位置参数'mm'.我知道问题是它像time_to_minutes((h,mm)一样运行,我能做些什么让它像time_to_minutes(h,mm)一样运行?

def time_to_minutes(h,mm):
    time = h*60 + mm
    return time

def extract_time(time):
    h=int(time[:-3])
    mm=int(time[-2:])
    return h,mm

def time_between(a,b):
    first = time_to_minutes(extract_time(a))
    return first
Run Code Online (Sandbox Code Playgroud)

python tuples

0
推荐指数
1
解决办法
104
查看次数

标签 统计

python ×4

list ×1

pointers ×1

python-2.7 ×1

struct ×1

tuples ×1