0
我做了一個加密練習,我需要填充輸入文本的長度爲16個字節(AES)的倍數,並且我發現在python中我可以創建一個空字符串空間)與:填充空字符串到文本
'' * N#無論整數n是
是否有哈斯克爾等效的方法?我可以用簡單的函數使用遞歸來做到這一點,但只是好奇的是有一種方法比python剪輯更短。
我做了一個加密練習,我需要填充輸入文本的長度爲16個字節(AES)的倍數,並且我發現在python中我可以創建一個空字符串空間)與:填充空字符串到文本
'' * N#無論整數n是
是否有哈斯克爾等效的方法?我可以用簡單的函數使用遞歸來做到這一點,但只是好奇的是有一種方法比python剪輯更短。
由於字符串的字符的列表,你可以使用:
replicate :: Int -> a -> [a]
例如:
replicate 5 'x' == "xxxxx"
您可以通過搜索與Hoogle一個合理的類型簽名找到這樣自己的效用函數; replicate
恰好是Hoogle search for Int -> a -> [a]
中的第一個結果。
如果您使用Text
代替String
,存在Data.Text
等效功能:
replicate :: Int -> Text -> Text
replicate 5 (pack "x") == pack "xxxxx"