小编don*_*llo的帖子

如何将一行中的行附加到另一个文件的每一行的末尾?

假设我有两个文件:

cat
dog
baboon
feline
canine
primate

我想在添加空格后将一个文件中的行附加到另一个文件的末尾.我知道在bash中使用for循环来做到这一点的方法,但我认为有一个命令可以做这种事情,我只是记不住了.

输出应如下所示:

cat feline
dog canine
baboon primate

bash append line

4
推荐指数
1
解决办法
4679
查看次数

如何使用管道对从文件中读取的行进行编号?

我是一名Haskell初学者,试图将我的头包裹在导管库中.

我尝试过类似的东西,但它没有编译:

import Data.Conduit
import Data.Conduit.Binary as CB
import Data.ByteString.Char8 as BS

numberLine :: Monad m => Conduit BS.ByteString m BS.ByteString
numberLine = conduitState 0 push close
  where
    push lno input = return $ StateProducing (lno + 1) [BS.pack (show lno ++ BS.unpack input)]
    close state = return state

main = do
  runResourceT $ CB.sourceFile "wp.txt" $= CB.lines $= numberLine $$ CB.sinkFile "test.txt"
Run Code Online (Sandbox Code Playgroud)

似乎conduitState中的状态必须与管道的输入类型具有相同的类型.或者至少这是我从错误信息中理解的:

$ ghc --make exp.hs
[1 of 1] Compiling Main             ( exp.hs, exp.o )

exp.hs:8:27:
    Could not …
Run Code Online (Sandbox Code Playgroud)

haskell conduit

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

两个简单的代码可生成数字的除数。为什么递归速度更快?

解决问题时,我必须计算数字的除数。我有两个实现,对于给定的数字,所有除数均大于1。

第一种是使用简单的递归:

divisors :: Int64 -> [Int64]
divisors k = divisors' 2 k
  where
    divisors' n k | n*n > k = [k]
                  | n*n == k = [n, k]
                  | k `mod` n == 0 = (n:(k `div` n):result)
                  | otherwise = result
      where result = divisors' (n+1) k
Run Code Online (Sandbox Code Playgroud)

第二个使用Prelude中的列表处理功能:

divisors2 :: Int64 -> [Int64]
divisors2 k = k : (concatMap (\x -> [x, k `div` x]) $!
                  filter (\x -> k `mod` x == 0) $! 
                  takeWhile (\x …
Run Code Online (Sandbox Code Playgroud)

performance haskell

3
推荐指数
2
解决办法
1281
查看次数

是否有一个Python库,它为给定的unicode字符或字符串提供脚本名称?

是否有一个库可以告诉特定unicode字符属于哪个脚本?

例如,对于输入"u'ሕ'",它应该返回Ethiopic或类似的.

python unicode

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

标签 统计

haskell ×2

append ×1

bash ×1

conduit ×1

line ×1

performance ×1

python ×1

unicode ×1