小编sfj*_*jac的帖子

do-while声明正文中的声明范围

你为什么不能声明while循环里面做的一个变量?OP询问为什么do-while循环的while-condition中的声明不在do语句的范围内.这将是非常不自然的,因为C/C++通常遵循"顶级声明"模式.但是相反的是 - 为什么不将do语句中的任何声明的范围扩展到while条件.这样就可以了

int i;
do {
  i = get_data();
  // whatever you want to do with i;
} while (i != 0);
Run Code Online (Sandbox Code Playgroud)

被缩短为

do {
  int i = get_data();
  // whatever you want to do with i;
} while (i != 0);
Run Code Online (Sandbox Code Playgroud)

它为限制控制变量的范围提供了一个整洁的语法.(注意:我知道这不是有效的语法 - 这就是问题的关键,为什么不扩展语言以允许这种语法.)

正如我在下面的评论中指出的那样,这个扩展不会破坏现有代码,并且非常符合引入for-init(和while-init)范围的精神.

c++ declaration language-lawyer do-while

7
推荐指数
1
解决办法
1042
查看次数

Jupyter Notebook只有Python [conda root]和Python [默认]内核

我按照其他Python [root]帖子中列出的所有步骤进行了操作,但仍然无法显示python2和python3内核.

这是我的Jupyter笔记本显示的内容:

Jupyter笔记本

这是启动日志:

在此输入图像描述

我安装了Anaconda3(3.5版本).

如何显示python2和python3内核?

python kernel conda jupyter

7
推荐指数
1
解决办法
4852
查看次数

Django + MongoDB

我试图将MongoDB与Django一起使用.我已按照本指南进行设置,以便安装所有必要的东西. MongoDB + Django教程 我的问题如下:尝试cities = City.objects.get()在我运行时views.py遇到以下错误:

DoesNotExist at /GetAllCities/
        City matching query does not exist.
Run Code Online (Sandbox Code Playgroud)

我的MongoDB看起来像这样

Databasename = "exjobb"
Collectioname = "cities"`
Run Code Online (Sandbox Code Playgroud)

它包含30,000行数据,它适用于我的Rails和PHP应用程序.

我的模型类看起来像这样

    from django.db import models
    from django.core.urlresolvers import reverse
    from djangotoolbox.fields import ListField, EmbeddedModelField

    # Create your models here.
    class City(models.Model):
        city = models.TextField()
        loc = models.TextField()
        population = models.IntegerField()
        state = models.TextField()
        _id = models.IntegerField()

        def __unicode__(self):
            return self.city
Run Code Online (Sandbox Code Playgroud)

数据库中的一行看起来像这样

{
     "city" : "ACMAR",
     "loc" : [
        -86.51557,
        33.584132
     ],
     "population" …
Run Code Online (Sandbox Code Playgroud)

python django mongodb mongoengine

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

使用与另一个项目相同的设置在Eclipse CDT中创建新的C++项目

有没有一种直接的方法来创建一个克隆现有项目设置的新C++项目?在开发C++时,我喜欢编写许多小测试和示例,但如果我的代码依赖于外部库,就像他们经常那样,我必须每次都从头开始设置包含,库,编译器设置等.有某种模板机制吗?

我知道有关C/C++项目设置的导出/导入.但是,这似乎只能为C++编译提取包含路径和#defines.它不导出完整的设置(编译器选项,警告设置,链接器选项,库,库路径......)这一事实确实限制了它的实用性.

此外,您必须为每个运行配置单独执行此操作,但这只是一个小小的不便.

我通常采用的是复制一个测试项目并手动编辑.project.cproject文件,然后核对和替换文件.但这似乎是一个容易出错的黑客攻击.

还有其他方法吗?我是否需要切换到单独的构建系统并在外部生成eclipse项目以获得看起来非常基本的功能?


UPDATE

我已经尝试过创建一个插件项目,但如果您之前没有这样做,那么这些说明会留下一些不足之处.我当然想知道如何做到这一点.

我以一些非常简单的方式复制和修改了示例模板,只是为了开始,但是"如何使用CDT注册项目模板"指令从一开始就让我失望:"1.从Eclipse创建一个空的插件项目没有源文件夹的工作台." 我认为这需要安装PDE,我做了,但后来我迷路了.我尝试了"文件/新建/插件项目",取消选择"创建Java项目"(我假设这是"空"的意思).这创建了一个仍然包含大量内容的项目.然后,我按照步骤2中的描述创建了子目录,但无法弄清楚如何在Eclipse中显示这些子目录,因此我无法在步骤11中浏览到模板XML文件.此外,在步骤9中/ 10,我没有得到'字面名称'的模板

c++ eclipse eclipse-cdt

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

ldap3 python搜索组成员并检索其sAMAcountName(活动目录)

我正在尝试将ldap3与python一起使用,以检索组的成员,并且还检索其sAMAccountName,因为我们混合了DN(有些是NTID,有些是名字/姓氏)。

我一直在尝试没有0运气的情况,任何帮助将不胜感激:

from ldap3 import Server, Connection, AUTO_BIND_NO_TLS, SUBTREE, BASE,
      ALL_ATTRIBUTES, ObjectDef, AttrDef, Reader, Entry, Attribute,
      OperationalAttribute import ldap3

conn = Connection(Server('adserver.com', port=389, use_ssl=False),
                  auto_bind=AUTO_BIND_NO_TLS, user='DOMAIN\\\NTID',
                  password='somepassword')

conn.search(search_base='CN=GROUPNAME,OU=Groups,OU=Resources,OU=Global,DC=adserver.com',
            search_filter='(objectCategory=person)', search_scope=SUBTREE,
            attributes = ['sAMAAccountName'], size_limit=0) 

print(conn.response_to_json())
Run Code Online (Sandbox Code Playgroud)

python ldap python-3.x

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

tvOS XC UI 测试滑动远程手势

有谁知道如何在 tvOS 上处理 UI XCTest 的滑动手势?我的页面顶部有一个隐藏的导航栏,在遥控器上向下滑动时会出现该导航栏。我似乎无法XCUIRemote.shared.press(.down)在 UI 测试中使用它来复制它。还有其他方法吗?

xctest xcode7 tvos

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

在 git --for-each-ref 中限制主题长度

有没有办法在格式字符串中指定主题的最大长度git --for-each-ref?我有一个方便的快捷方式,列出我的分支和最近提交的主题,但我想截断主题字段的长度,以便输出不会换行。一时兴起,我试过了,%(subject:short)但 git 说

fatal: %(subject) does not take arguments
Run Code Online (Sandbox Code Playgroud)

git

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

在 PyCharm 下将 nbdime 用于 Jupyter 笔记本

我用来nbdime区分和合并 Jupyter 笔记本,除了对于大型笔记本来说有点慢之外,我喜欢它。然而,当我尝试在 PyCharm 中进行版本控制时,我的 git 设置似乎被忽略,并且它对文件进行了文本差异.ipynb

我的.gitconfig有以下内容,我相信是在安装时设置的nbdime

[diff "jupyternotebook"]
        command = git-nbdiffdriver diff
[merge "jupyternotebook"]
        driver = git-nbmergedriver merge %O %A %B %L %P
        name = jupyter notebook merge driver
[difftool "nbdime"]
        cmd = git-nbdifftool diff \"$LOCAL\" \"$REMOTE\"
[difftool]
        prompt = false
[mergetool "nbdime"]
        cmd = git-nbmergetool merge \"$BASE\" \"$LOCAL\" \"$REMOTE\" \"$MERGED\"
[mergetool]
        prompt = false
Run Code Online (Sandbox Code Playgroud)

从命令行来看,这非常有效。(嗯,我从来没有必要进行合并,但是 diff 效果很好。)

另外,我发现您可以在 PyCharm 中指定外部差异工具,但这似乎是全局设置。

有人让它发挥作用吗?

git pycharm jupyter dataspell

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

GitHub:将问题评论移至其他问题

一个用户在我的一个GitHub仓库中发布了一个对现有问题的评论,而他的评论确实应该被添加为新问题。现在有整个微型线程放错了位置。有什么办法可以将这些评论移至另一个问题?我已经在GitHub仓库等中看到了许多有关移动问题的问题,但是在移动注释上却找不到任何东西。

github issue-tracking

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

Pandas groupby 在保留多个聚合的组内进行排序

我想在由 返回的组中应用排序和限制groupby,就像在这个问题中一样。但是,我有多个聚合,我希望所有聚合都保留在结果中。

这是一个简单的例子:

products = ["A", "B", "C", "D"]
stores = ["foo", "bar", "baz"]
n = 30

product_list = [products[i] for i in np.random.randint(0, len(products), n)]
store_list = [stores[i] for i in np.random.randint(0, len(stores), n)]
rating_list = np.random.random(n) * 5
sales_list = np.random.random(n) * 10000

df = pd.DataFrame(
    {'store': store_list, 
     'product': product_list, 
     'sales': sales_list, 
     'rating': rating_list})

df = df[['store', 'product', 'sales', 'rating']]

df[:5]
Run Code Online (Sandbox Code Playgroud)

未分组的数据框

我想通过storeandproduct和 bothsumcountthe分组sales,同时mean …

python sorting pandas pandas-groupby

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