是否有快速命令改变
Cnotrol
Run Code Online (Sandbox Code Playgroud)
至
Control
Run Code Online (Sandbox Code Playgroud) 如何使用正则表达式从字符串中提取double值.
import re
pattr = re.compile(???)
x = pattr.match("4.5")
Run Code Online (Sandbox Code Playgroud) 我把这些定义放在一个文件中:
x = 'a' : 'b' : 'c' : []
y = ['a', 'b', 'c']
Run Code Online (Sandbox Code Playgroud)
(重要的是在文件中定义那些,而不是在GHCi中,因为在后一种情况下,事情变得更加奇怪,但这是另一个问题.)
现在,我在GHCi中加载此文件并:
?> :sprint x
x = _
?> :sprint y
y = _
?> seq x ()
()
?> seq y ()
()
?> :sprint x
x = 'a' : _
?> :sprint y
y = "abc"
Run Code Online (Sandbox Code Playgroud)
这里发生了什么?我理解在这种情况下会发生什么x,这正是我的预期.但那怎么样y?
我所看到的似乎与报告的第3.7节相矛盾,后者说:
翻译:以下标识成立:
Run Code Online (Sandbox Code Playgroud)[e1, …, ek] = e1 : (e2 : ( … (ek : [])))
此外:
y = [toUpper …Run Code Online (Sandbox Code Playgroud) 据我所知,F#对存在类型没有任何支持.所以,我正在寻找另一种表达我的想法的方式.
我有一个数据结构,其内容可以用许多不同的方式解释.在这个特定的例子中,我认为它可以被视为一个int或一个真实的:
type Packed = (* something sensible *) unit
type PackedType = | PackedInt
| PackedReal
let undefined<'a> : 'a = failwith "undefined"
let unpackInt : Packed -> int = undefined
let unpackReal : Packed -> real = undefined
let packInt : int -> Packed = undefined
let packReal : real -> Packed = undefined
Run Code Online (Sandbox Code Playgroud)
哪里real有意义,说:
type real = int * int
let addReal : real -> real -> real = undefined
Run Code Online (Sandbox Code Playgroud)
现在,我需要一个功能addPacked : PackedType -> …
我在使用python解析JSON时遇到了问题,现在我被卡住了.
问题是我的JSON实体并不总是一样的.JSON是这样的:
"entries":[
{
"summary": "here is the sunnary",
"extensions": {
"coordinates":"coords",
"address":"address",
"name":"name"
"telephone":"123123"
"url":"www.blablablah"
},
}
]
Run Code Online (Sandbox Code Playgroud)
我可以通过JSON,例如:
for entrie in entries:
name =entrie['extensions']['name']
tel=entrie['extensions']['telephone']
Run Code Online (Sandbox Code Playgroud)
问题来了,因为有时,JSON没有所有"字段",例如,telephone字段,有时会丢失,因此,脚本失败KeyError,因为此条目中缺少关键电话.
所以,我的问题是:我怎么能运行这个脚本,留下一个缺少电话的空白区域?我尝试过:
if entrie['extensions']['telephone']:
tel=entrie['extensions']['telephone']
Run Code Online (Sandbox Code Playgroud)
但我认为不行.
我有一个Numpy二维数组,其中一列有布尔值,即True/ False.我想分别将它转换为整数1,0我该怎么办呢?
我data[0::,2]是布尔,我试过
data[0::,2]=int(data[0::,2])
Run Code Online (Sandbox Code Playgroud)
,但它给了我错误:
TypeError: only length-1 arrays can be converted to Python scalars
我的前5行数组是:
[['0', '3', 'True', '22', '1', '0', '7.25', '0'],
['1', '1', 'False', '38', '1', '0', '71.2833', '1'],
['1', '3', 'False', '26', '0', '0', '7.925', '0'],
['1', '1', 'False', '35', '1', '0', '53.1', '0'],
['0', '3', 'True', '35', '0', '0', '8.05', '0']]
Run Code Online (Sandbox Code Playgroud) 我一直在尝试使用ssh密钥,以便能够通过使用在同一台Linux机器/服务器上从一个用户切换到另一个用户sudo su - username.
我想要做的是:我在一台服务器上有几个帐户.我想passwd -l username通过在同一台机器上从一个用户转到另一个用户来锁定这些帐户,并且只允许使用SSH密钥进行访问,例如: [user1@server]$ ssh user2@server
我这样做是通过将公钥复制user1到authorized_keys文件中user2而且工作正常.
但是,我想也是这样做的另一件事,是要能够sudo su - user2从user1通过使用SSH密钥,这样我就可以避开密码提示.
例如, [user1@server]$ sudo su - user2
我修改了sshd_config文件,并取消注释字段:
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
PasswordAuthentication no
Run Code Online (Sandbox Code Playgroud)
但我仍然无法做到这一点.
我也试过我在互联网上发现的有关代理转发的内容,但没有.
谁能帮助我如何做到这一点或指向正确的方向?
我试图以这样一种方式证明类型级列表的关联性,这种方式将允许我在等效类型之间进行转换而无需携带任何约束。
假设串联的标准定义:
type family (++) (xs :: [k]) (ys :: [k]) :: [k] where
'[] ++ ys = ys
(x ': xs) ++ ys = x ': (xs ++ ys)
Run Code Online (Sandbox Code Playgroud)
假设,我得到了一个函数:
given :: forall k (a :: [k]) (b :: [k]) (c :: [k]). Proxy ((a ++ b) ++ c)
given = Proxy -- Proxy is just an example
Run Code Online (Sandbox Code Playgroud)
我想调用这个函数,然后使用关联性:
my :: forall k (a :: [k]) (b :: [k]) (c :: [k]). Proxy (a ++ (b ++ c))
my …Run Code Online (Sandbox Code Playgroud) 我尝试使用 python 脚本发送电子邮件,但收到错误消息:
5.7.0 must issue a starttls command first
Run Code Online (Sandbox Code Playgroud)
我正在使用smtplib,这是我的代码:
import smtplib
sender = 'from@fromdomain.com'
receivers = 'to@todomain.com'
message = """From: From Person <from@fromdomain.com>
To: To Person <to@todomain.com>
Subject: SMTP e-mail test
This is a test e-mail message.
"""
try:
smtpObj = smtplib.SMTP('smtp.gmail.com')
smtpObj.sendmail(sender, receivers, message)
print "Successfully sent email"
except Exception,e:
print str(e)
Run Code Online (Sandbox Code Playgroud)
如果有人知道如何解决此错误,我将不胜感激。
默认情况下,如果你使用fugitive.vim的:Gdiff上是与git的冲突文件缓冲区,你会得到一个三路DIFF显示HEAD,工作复印件(冲突标志),和merge.
我喜欢git config merge.conflictstyle diff3设置,包括基础(最近的共同祖先HEAD和merge冲突标记.
不幸的是,即使diff3在conflictstylein fugitive.vim中,你仍然只能获得3个窗格(没有基础).
有谁知道如何在另一个窗格中显示它?理想情况下是关于工作副本.
Tim Pope的评论似乎提供了一些线索,但我无法弄明白.