小编Ram*_*amy的帖子

如何使用FSharp创建XML属性(而不是元素)?

我需要创建如下所示的XML:

<record id="100000000000000000" type="Message">  
    ...a bunch of xml ...
</record>  
Run Code Online (Sandbox Code Playgroud)

相反,使用我正在使用的FSsharp代码,我得到了这个:

<record>
    <type>Message</type>
    <id>118448</id>
    ...a bunch of xml....
</record>
Run Code Online (Sandbox Code Playgroud)

这是我目前正在做的事情:

type record( id:int, sr:sender, recipients: recipient array, atts : attachment array, con : conversation, madeDate : creation) =  
    let mutable id: int = id
    let mutable typ = "Message"
    let mutable creation = madeDate
    let mutable sender  = sr
    let mutable recipients = recipients
    let mutable conversation = con
    let mutable attachments = atts

    public new() =
        record( -1, sender(-1,"Joe","Plumber","Joe@plumber.com"), …
Run Code Online (Sandbox Code Playgroud)

xml f# xml-serialization

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

在python中使用ftplib时

以下是导致错误的相关代码.

ftp = ftplib.FTP('server')
ftp.login(r'user', r'pass')

#change directories to the "incoming" folder
ftp.cwd('incoming')

fileObj = open(fromDirectory + os.sep + f, 'rb')

#push the file
try:
    msg = ftp.storbinary('STOR %s' % f, fileObj)
except Exception as inst:
    msg = inst
finally:
    fileObj.close()
    if '226' not in msg:
    #handle error case
Run Code Online (Sandbox Code Playgroud)

我之前从未见过这个错误,任何关于我为什么会得到它的信息都会有用和赞赏.

完整错误消息:[Errno 10060]连接尝试失败,因为连接方在一段时间后没有正确响应,或者建立的连接失败,因为连接的主机无法响应

应该注意的是,当我手动(即打开dos提示并使用ftp命令推送文件)从脚本所在的同一台机器推送文件时,我没有问题.

python ftplib

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

比较两个包含数字的python字符串

更新:我应该尽早指定,但不是所有的名称都只是浮点数.例如,其中一些"前缀"为"YT".所以例如"YT1.1.所以,你有同样的问题YT1.9 <YT1.11应该是真的.我真的很惊讶字符串比较失败了....

你好,这应该是一个非常简单的问题,但我似乎无法找到答案.我想按名称排序一堆XL工作表.每个名称都是数字,但是教科书"部分"的编号方式相同,这意味着4.11之后的部分4.11出现在4.9和4.1之后.我想只是将这些数字作为字符串进行比较,但我得到以下内容:

>>> s1 = '4.11'
>>> s2 = '4.2'
>>> s1> s2
False
>>> n1 = 4.11
>>> n2 = 4.2
>>> n1 > n2
False
Run Code Online (Sandbox Code Playgroud)

如何比较这两个值,使4.11大于4.2?

python string numbers

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

为什么这个函数处于无限循环中 - 学习lisp

(编辑:我还不会担心TCO)

我(终于到处)学习Lisp.我正在尝试编写自己的(naive-ish)函数来压缩列表.我从较简单的情况开始,如果它不起作用,它将构建它以处理更复杂的情况.不幸的是,现在,我得到了一个无限循环,无法弄清楚原因.

我也不知道如何在lisp中使用任何调试方法,所以如果你能指出我的方向,我也会很感激.

(defun flattenizer (lst)
  (if (listp (car lst))
    (flattenizer (car lst))
    (if (null lst)
      nil
      (cons (car lst) (flattenizer (cdr lst))))))
Run Code Online (Sandbox Code Playgroud)

最终代码:

(defun flattenizer (lst)
  (cond
    ((null lst) nil)
    ( (consp (car lst)) 
        (nconc (flattenizer (car lst)) (flattenizer (cdr lst)) ))
    (T (cons (car lst) (flattenizer (cdr lst))))))
Run Code Online (Sandbox Code Playgroud)

测试:

* (flattenizer '((1 2) (3 4)))

(1 2 3 4)
* (flattenizer '(1 (2 3) (4 5)))

(1 2 3 4 5)
* (flattenizer '((1 2) 3 (4 5) …
Run Code Online (Sandbox Code Playgroud)

lisp recursion infinite-loop

4
推荐指数
2
解决办法
216
查看次数

使用Python或F#中的参数运行批处理文件

我搜索了网站,但我没有看到任何与我想要的相匹配的东西.我创建了一个使用我创建的Web服务的独立应用程序.要运行客户端我使用:

C:/scriptsdirecotry> "run-client.bat" param1 param2 param3 param4
Run Code Online (Sandbox Code Playgroud)

我将如何用Python或F#编写代码.看起来应该很简单,但我没有在网上看到任何与我正在寻找的相匹配的东西.

python windows f# web-services batch-file

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

如何在F#中订购LIST

总F#n00b问题.如何对LIST数据结构进行排序?

编辑:对不起,我的数据结构实际上是一个列表.

也许我应该添加我的代码因为只是使用".sort"没有工作:

let getDataFromDb (db: MyDB) Id =
Query.query <@ seq { 
    big honking database/FLinq query
    yield  (sec, pm, sr, trade, tradeRec, i, pm_firm, files, lt)
} @> |> List.ofSeq
Run Code Online (Sandbox Code Playgroud)

当我将最后一行代码更改为:
} @> |> List.ofSeq.sortBy fst
我得到以下内容:

错误1未定义字段,构造函数或成员"sortBy"

呃,多么痛苦.我现在正在尝试这个:

|> List.ofSeq |> List.sortBy
Run Code Online (Sandbox Code Playgroud)

但是我得到了这个:

错误1类型不匹配.期待a(Security*RoleContributor*RoleContributor*SuggestedTrade*SuggestedTradeRecommendation*Idea*RoleContributor*SupportingUploadedFile*LargeText)list - >'a a given a('b - >'c) - >'b list - >'b list The type' (安全*RoleContributor*RoleContributor*SuggestedTrade*SuggestedTradeRecommendation*Idea*RoleContributor*SupportingUploadedFile*LargeText)列表'与类型'' - >'b'不匹配

f#

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

如何在SQL Server 2005/2008中查找过程(或函数)的所有实例

我修改了一个程序,它现在需要更多的参数.如何找到调用该过程的每个位置,以便更新proc传递的参数个数?

我试过这个:

select * from syscomments where text like '%MODIFIED-PROCEDURE-NAME%'
Run Code Online (Sandbox Code Playgroud)

但我仍然发现其他地方的proc被称为此查询没有返回.

sql-server

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

其余的铁血运动异常在哪里?

我可能是错的,但在IronPython中引发SystemError时,我似乎只得到不完整的堆栈跟踪和异常消息.我这样做:

                try:
                    with SQLConnection(DATASOURCES[SCHEDULEDB]) as db:
                        db.execute_sql( command + ' ' + ','.join(block) + ';' )
                except Exception, e:
                    print 'caught an exception'
                    print "Unexpected error:", sys.exc_info()[0]
                    print e
                    raise
                finally:
                    db.close()
                    engine.close()
Run Code Online (Sandbox Code Playgroud)

但是,我所看到的只是:

Traceback (most recent call last):
SystemError: The connection has been disabled.
Run Code Online (Sandbox Code Playgroud)

python ironpython exception-handling

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

python项目中的单个记录器?

我想为python项目创建一个记录器.我想确保我为项目中的每个模块使用相同的记录器.做这个的最好方式是什么?看来我需要一个全局日志记录对象?或者可能是每个其他模块导入的日志记录模块?我想确保我总是写入同一个日志文件.

我已经在使用python的logger和handler.问题是我必须定义记录器将在每个模块中写入哪个文件.我想定义一次日志文件路径,并将其用于每个模块.

python logging

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

haskell重定向

在F#工作让我了解Haskell.我目前正在教程的第7章,我强烈建议.但是问题很快.也许我已经领先于自己,我会在未来的章节中找到答案,但是,如果函数只接受F#中的一个参数,是否有一种方法可以反转函数的位置和它的参数.因此,例如,在F#中如果你有一个名为digitToInt的函数(就像在Haskell中那样),你可以执行以下操作:

3 |> digitToInt

我知道使用后退滴答,但这是专门用于二进制函数.一元函数有什么相似之处吗?

f# haskell functional-programming

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