小编Ahm*_*mad的帖子

在Pypi上注册内部包

我在某处读到,如果您为专有工作制作内部Python包,您仍应在PyPi上注册该名称,以避免潜在的未来依赖性问题.

如果不公开发布我的代码,我该怎么做?该软件包包含在我的工作内部使用的代码.我应该使用我想要保留的名称创建一个空的python包并将其上传到PyPi吗?然后使用git而不是PyPi在工作中安装我的包?

上传一个空包似乎是一件愚蠢的事情,这会让其他人烦恼.但我找不到一种方法来注册这个名字.

python package pypi python-3.x

10
推荐指数
1
解决办法
1148
查看次数

LR(k) 到 LR(1) 语法转换

我对维基百科的以下引用感到困惑:

换句话说,如果一种语言足够合理以允许高效的单遍解析器,则它可以由 LR(k) 语法来描述。并且该语法总是可以机械地转换为等效(但更大)的 LR(1) 语法。因此,从理论上讲,LR(1) 解析方法足以处理任何合理的语言。在实践中,许多编程语言的自然语法接近 LR(1)。[需要引用]

这意味着如果能够将语法转换为语法,则解析器生成器(如bison)将非常强大(因为它可以处理LR(k)语法)。是否存在一些这样的例子,或者如何做到这一点的秘诀?我想知道这一点,因为我的语法中有移位/归约冲突,但我认为这是因为它是一种语法,并且想将其转换为语法。附带问题:是一种不合理的语言,因为我读过,生成的解析器无法解析它。LR(k)LR(1)LR(2)LR(1)C++bison

compiler-construction parsing bison lr-grammar

6
推荐指数
1
解决办法
2503
查看次数

SQL Server将Table1中的所有行与Table2中的所有行进行匹配

有人请帮助我这个查询,我有2个表

雇员

EmployeeID   LanguageID
1            1
1            2
1            3
2            1
2            3
3            1
3            2
4            1
4            2
4            3
Run Code Online (Sandbox Code Playgroud)

任务

TaskID   LanguageID   LangaugeRequired
1        1            1
1        2            0
2        1            1
2        2            1
2        3            1
3        2            0
3        3            1
Run Code Online (Sandbox Code Playgroud)

LangaugeID连接到表语言(此表仅用于解释)

   LangaugeID   LanguageName
   1            English
   2            French
   3            Italian
Run Code Online (Sandbox Code Playgroud)

是否有可能进行查询,让员工可以说出每项任务所需的所有语言?

例如:

  1. 任务ID 1仅需要LanguageID = 1,因此结果应为EmployeeID 1,2,3,4
  2. 任务ID 2需要所有3种语言,因此结果应为EmployeeID 1,4
  3. 任务ID 3仅需要LanguageID = 3,因此结果应为EmployeeID 1,2,4

sql database sql-server

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

如何在更新的Rails上通过readonly替换find?

我的项目中有这个遗留代码:

Model.find(id, :readonly => false)
Run Code Online (Sandbox Code Playgroud)

显然,它通过id搜索,只搜索不是readonly的对象.但readonly不是Model的属性,这应该是检查实际的ActiveRecord属性,该属性定义该实例是否是只读实例.我不知道这个代码实际上是做什么的,也许是:readonly => false在那里没用.但是我得到了预期的警告:

DEPRECATION WARNING: Passing options to #find is deprecated. Please build a scope and then call #find on it.
Run Code Online (Sandbox Code Playgroud)

我无法用where替换它,因为我无法在SQL中检查readonlyness,因为它不是SQL属性.

该错误实际上明确指出我仍然可以使用find,如果在范围内.但我做了一个范围,如下:

scope :by_id_not_readonly, ->(id) { find(id, :readonly => false) }
Run Code Online (Sandbox Code Playgroud)

但抛出相同的警告,但在模型中的范围声明行而不是控制器...


我做了一些其他测试:

用where替换它('id =?AND readonly = false',id)实际上给出了一个错误,因为例外 - readonly不适合模型.

在没有readonly位的情况下运行代码会破坏测试,因为它返回只读记录,稍后代码会尝试更新它们,从而产生错误.

向查找散列添加不正确的选项,例如find(id,:readonly => false,:ldisfs32j9fmdf90sdfds => false)会产生未知密钥错误,例外情况.


所以,这:readonly位是至关重要的,但我无法用简单的地方替换它.如何在较新版本的rails中执行此操作?

ruby activerecord ruby-on-rails deprecation-warning

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

正则表达式,用于识别C中的变量声明

我正在使用正则表达式来识别C中的变量声明,我已经得到了这个.

[a-zA-Z_][a-zA-Z0-9]*
Run Code Online (Sandbox Code Playgroud)

有没有更好的解决方案?

c regex lex

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

Python列表| 如何删除列表中的括号,引号和逗号?

从我的数据库中,我将返回一个列表以显示在我的HTML页面中,但我的列表中有这些不需要的符号.我尝试使用split()功能,但它不会工作.如何删除这些括号,逗号和引号.谢谢你的帮助

输出是:

[('cenomar',), ('cedula',), ('Birth Certificate',), ('Clearance',)]
Run Code Online (Sandbox Code Playgroud)

我想要:

 [cenomar, cedula, Birth Certificate, Clearance]
Run Code Online (Sandbox Code Playgroud)

这是我的python函数:

 @app.route('/')
    def search():
        conn=psycopg2.connect("dbname='forms' user='postgres' password='everboy' 
       host='localhost' port='5432'")
       cur=conn.cursor()
       cur.execute("SELECT name from form")
       rows=cur.fetchall()
       print(rows)
       return render_template("form.html",rows=rows)
Run Code Online (Sandbox Code Playgroud)

python flask python-3.x

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

在PHP类中使用Mysqli的问题

我是面向对象PHP的新手,我遇到了以下代码的问题.使用Mysqli的数据库查询在类中不起作用,但在外部工作正常.所以我的问题是,我做错了什么?

class webFile {

    private $sql, $query;

    function __construct() {
        $sql = new mysqli('host','user','pass','dbname');
    }

    function doQuery() {
        $queryText = "SELECT * FROM blog_posts WHERE number = '2'";
        if($query = $this->sql->query($queryText)) {
            $results = $query->fetch_array();
            return $results['post_id'];
        } else {
            return "Error";
        }
    }
}

$object = new webFile();
echo $object->doQuery();
Run Code Online (Sandbox Code Playgroud)

服务器错误日志显示"PHP致命错误:在非对象上调用成员函数查询()"......我是否犯了另一个愚蠢的错误?我在网上看过,但找不到与此问题相关的任何内容.任何帮助将不胜感激.

php oop mysqli

0
推荐指数
1
解决办法
5348
查看次数