小编Mar*_*s F的帖子

Python struct.pack 和 unpack

我绝不是一个经验丰富的Python程序员,这就是为什么我相信这个问题可能有一个明显的答案,但我就是无法理解struct.pack和unpack。我有以下代码:

struct.pack("<"+"I"*elements, *self.buf[:elements])

我想反转它的打包,但是我不知道如何反转,我知道“<”表示小端,“I”是无符号整数,仅此而已,我不知道如何使用 struct.unpack 反转打包。

python binary byte struct endianness

9
推荐指数
1
解决办法
5万
查看次数

F# Array.FindIndex 异常处理

我有以下函数可以查找数组中的索引

let numbers_array = [| "1"; "2"; "3"|]
let findIndex arr elem = arr |> Array.findIndex ((=) elem)

let s = "123"
findIndex numbers_array (string s.[0]))
Run Code Online (Sandbox Code Playgroud)

但是如果我尝试跑步

findIndex numbers_array (string s.[10]))

它超出范围并抛出以下错误

System.Collections.Generic.KeyNotFoundException:在集合中找不到满足谓词的索引。

我怎样才能使我的函数不抛出异常,而是执行类似 printf 语句的操作?

arrays sorting collections f# exception

6
推荐指数
1
解决办法
270
查看次数

F# match pattern discriminator not defined issue

im in the process of writing a transposing recursive function and i have stopped at a problem. So i want to have a check using match by calling isTable function to verify that the input M is a valid table, however it errors and im not sure how to fix it

let isTable list =
    match List.map List.length list |> List.distinct |> List.length with
    | 1 -> true
    | _ -> false


let rec transpose M = 
    match M with …
Run Code Online (Sandbox Code Playgroud)

error-handling recursion f# list pattern-matching

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