是否可以在emacs中添加注释结束字符?
我将采用我的第一个代码并应用我想要的例子:
(defun smart-tab ()
(interactive)
\1\ (if (minibufferp)
\1a\ (minibuffer-complete)
\2\ (if (eq major-mode 'emacs-lisp-mode)
(progn
(save-excursion
(search-backward "(def")
(while (not (looking-at "\\s-*)"))
(beginning-of-line 1)
(indent-for-tab-command)
(beginning-of-line 1)
(next-line)
(when (looking-at (concat ".*" comment-start))
(next-line))))
(indent-for-tab-command))
(yas-expand)))
)
Run Code Online (Sandbox Code Playgroud)
我想在函数前面的缩进区域中添加一些信息,指示逻辑部分的起始位置.
这对于emacs-lisp是否可行,是否有一种简单的方法可以使用一些小技巧来考虑评估者跳过某些文本?
我想检查一个(forward-sexp 1)
是成功的,还是以错误结束.问题是它返回nil,即使它成功了.怎么做这个检查?
如何将QVector的一部分发送到函数?
QVector<int> a;
a.append(1);
a.append(2);
a.append(3);
a.append(4);
a.append(5);
Run Code Online (Sandbox Code Playgroud)
某些打印功能应打印"2 3 4",将矢量的子集作为参数.
在R中,这是可能的a[2:4]
.
这是可能吗?
注意:在std::vector
,建议使用该insert
函数创建一个新变量.这是一个不同的插入,但QVector
我找不到推荐的方法.
我有一个以下结构的嵌套列表:
nested = [["a","b"], ["c", "d"]]
Run Code Online (Sandbox Code Playgroud)
我现在想坚持这个结构,但删除元素属于另一个列表.想象一下这个清单stoplist = ["a","z"]
结果将是:
[["b"], ["c", "d"]]
Run Code Online (Sandbox Code Playgroud)
我希望我在这里错过了一个简单的事情,但在这种情况下我似乎无法获得列表理解:
[letter for letter in List if letter not in stoplist for List in nested],
Run Code Online (Sandbox Code Playgroud)
它运行,但它给出了这个结果: ['c', 'c', 'd', 'd']
发生了什么,以及如何解决这个问题?
注意:我知道这可以通过追加来完成,但我宁愿避免这种情况,因为我将使用大文件.
我想以对数刻度绘制一些数据,但 R 绘制的密度曲线不是从我拥有的第一个极端数据点开始。
下面是一些测试数据和我使用的命令:
d = c(1,1,1,2,4,7,10,20,40,100,200,600,1000,3000,15000,23000)
plot(density(d), log='x', xlim=c(1,23000))
Run Code Online (Sandbox Code Playgroud)
不幸的是,我没有足够的声望点来发布图像,但是如果您输入这两行,它应该会显示一个大约 12 而不是 1(第一个数据点)的图。有什么想法可以解决这个问题吗?
谢谢大家!
这里发生了什么?
>>> a = datetime.datetime.now()
# waiting....
>>> b = datetime.datetime.now()
>>> c = b - a
>>> c.seconds
4
>>> c.microseconds
884704
Run Code Online (Sandbox Code Playgroud)
微秒怎么能比秒数多2倍?我想要微秒的精度(然后自己将其转换为秒),但这似乎是错误的.
考虑以下包结构:
foo/ # package name
spam/ # module name
__init__.py
eggs.py # contains "bar" method
exceptions.py # contains "BarException" class
Run Code Online (Sandbox Code Playgroud)
现在为了调用该bar
方法,我们必须这样做
import spam
spam.eggs.bar()
Run Code Online (Sandbox Code Playgroud)
我愿意输eggs
。
现在我知道这是可能的import ... as
(和from ... import
),但是没有办法使方法在树的更高层可用吗?
我不想诉诸的事情:
from ... import ...
eggs.py
代码放进__init__.py
去spam.exceptions.BarException
(可能更长)一个例子是exceptions.py
我定义异常类的地方。
每当我想让它们可供用户使用时,我不希望他们使用spam.exceptions.BarException
,而是能够使用spam.BarException
。
目标:
import spam
try:
spam.bar() # in this case throws BarException
except spam.BarException:
pass
Run Code Online (Sandbox Code Playgroud) 我正在尝试发送漂亮的 MIME 电子邮件,其中 html 将尽可能显示,如果不可能,它应该有一个文本回退。
也就是说,当 html 包含图像时,“alternative”部分应显示“img ... should be here”。
问题是我在 gmail 中看到了所有内容,还有其他选择。
我的 MIME 消息有问题吗?
以下是内容:
Content-Type: multipart/mixed; boundary="===============9061258228856181354=="
MIME-Version: 1.0
From: me@gmail.com <me@gmail.com>
To: me@gmail.com
--===============9061258228856181354==
Content-Type: multipart/alternative; boundary="===============2889524977048828163=="
MIME-Version: 1.0
--===============2889524977048828163==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
img 1043833786270341319 should be here
--===============2889524977048828163==--
--===============9061258228856181354==
Content-Type: image/jpeg; name="sky.jpg"
MIME-Version: 1.0
Content-ID: <1043833786270341319>
Content-Transfer-Encoding: base64
/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAMCAgMCAgMDAwMEAwMEBQgFBQQEBQoHBwYIDAoMDAsK
CwsNDhIQDQ4RDgsLEBYQERMUFRUVDA8XGBYUGBIUFRT/2wBDAQMEBAUEBQkFBQkUDQsNFBQUFBQU
FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBT/wAARCAEbAakDASIA
AhEBAxEB/8QAHQAAAgIDAQEBAAAAAAAAAAAAAgQBAwUGBwAICf/EADoQAAEEAQMDAwIFAgYBBAMB
--===============9061258228856181354==
Content-Type: multipart/related; boundary="===============7011550496984103126=="
MIME-Version: 1.0
--===============7011550496984103126==
Content-Type: text/html; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
<div><h1>bla</h1></div><img …
Run Code Online (Sandbox Code Playgroud) 输入:
mylist = ["a", "b"]
Run Code Online (Sandbox Code Playgroud)
我必须输出:
'["a", "b"]'
Run Code Online (Sandbox Code Playgroud)
但使用str(mylist)
或'{}'.format(mylist)
列表上的内容让我:
"['a', 'b']"
Run Code Online (Sandbox Code Playgroud)
这适用于JSON API,JSON不接受'
.
环顾四周,确实说明这里它不适用于容器的格式.
还有解决方案吗?我现在正在使用,.replace("'", '"')
但这真的很傻.
有可能以{{mystr | split(last) }}
某种方式使用类似的东西吗?
我希望已经有一个管道.