标签: self-reference

Python cx_Freeze名称__file__未定义

我有一个python脚本,它从互联网上获取图像,下载它,设置为桌面背景并在一分钟后更新.问题很可能是cx_Freeze不包括os模块,因为具有绝对路径的相同代码工作正常.我的代码也很完美,直到它冻结.它在我通过控制台加载,从IDLE运行或双击它之前冻结.每当我运行冻结文件时,我都会收到错误(如果我使用setup.py或cxfreeze file.py:

C:\Python33\Scripts>C:\Python33\Scripts\dist\desktopchanger.exe
Traceback (most recent call last):
  File "C:\Python33\lib\site-packages\cx_Freeze\initscripts\Console3.py", line 2
7, in <module>
    exec(code, m.__dict__)
  File "C:\Python33\desktopchanger.pyw", line 7, in <module>
    dir = path.dirname(__file__)
NameError: name '__file__' is not defined
Run Code Online (Sandbox Code Playgroud)

我的守则

import pythoncom
from urllib import request
from win32com.shell import shell, shellcon
from time import sleep
from os import path

dir = path.dirname(__file__) #get dierctory script is in
startpath = str(path.join(dir+'/bg/bg.jpg')) #add /bg/bg.jpg to path of script

pathtoimg=[]
for char in startpath:
    if char != "/": …
Run Code Online (Sandbox Code Playgroud)

python python-module setup.py cx-freeze self-reference

8
推荐指数
1
解决办法
6032
查看次数

在自引用表中急切地将Linq加载到SQL实体

我有2个相关的Linq to SQL问题.请参阅下面的图片,看看我的模型是什么样的.

问题1

我想知道如何User.AddedByUser在我的User 类/表上加载字段.该字段由字段上的关系生成User.AddedByUserId.该表是自引用的,我试图弄清楚如何让Linq to SQL User.AddedByUser急切地加载属性,即无论何时User加载/获取任何实体,它还必须获取User.AddedByUser和User.ChangedByUser.但是,据我所知,这可能会成为一个递归问题......

更新1.1:

我试过使用DataLoadOptions如下:

var options = new DataLoadOptions();
options.LoadWith<User>(u => u.ChangedByUser);
options.LoadWith<User>(u => u.AddedByUser);

db = new ModelDataContext(connectionString);
db.LoadOptions = options;
Run Code Online (Sandbox Code Playgroud)

但这不起作用,我在第2行得到以下异常:

System.InvalidOperationException occurred
  Message="Cycles not allowed in LoadOptions LoadWith type graph."
  Source="System.Data.Linq"
  StackTrace:
       at System.Data.Linq.DataLoadOptions.ValidateTypeGraphAcyclic()
       at System.Data.Linq.DataLoadOptions.Preload(MemberInfo association)
       at System.Data.Linq.DataLoadOptions.LoadWith[T](Expression`1 expression)
       at i3t.KpCosting.Service.Library.Repositories.UserRepository..ctor(String connectionString) in C:\Development\KP Costing\Trunk\Code\i3t.KpCosting.Service.Library\Repositories\UserRepository.cs:line 15
  InnerException:
Run Code Online (Sandbox Code Playgroud)

异常是不言自明的 - 对象图不允许是循环的.另外,假设第2行没有抛出异常,我很确定第3行会,因为它们是重复键.

更新1.2:

以下内容也不起作用(不与上面的Update 1.1结合使用):

var query = from u …
Run Code Online (Sandbox Code Playgroud)

c# eager-loading linq-to-sql self-reference

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

Javascript文字对象,引用自身

我有这个示例代码:

var foo = {

    self: this,

    init: function(){

        self.doStuff();
    },

    doStuff: function(){
        alert('doing stuff');   
    }

}

foo.init();
Run Code Online (Sandbox Code Playgroud)

为什么反对"自我"不起作用?

谢谢!

javascript object self-reference

7
推荐指数
3
解决办法
5589
查看次数

C++使用对正在定义的变量的引用

以下代码是否有效C++,根据标准(折扣... s)?

bool f(T& r)
{
    if(...)
    {
        r = ...;
        return true;
    }
    return false;
}

T x = (f(x) ? x : T());
Run Code Online (Sandbox Code Playgroud)

众所周知,在这个项目使用的GCC版本中编译(4.1.2和3.2.3 ...甚至没有让我开始...),但应该吗?

编辑:我添加了一些细节,例如f()概念在原始代码中的样子.基本上,它意味着在某些条件下初始化x.

c++ scope object-lifetime language-lawyer self-reference

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

python中[...]的含义是什么?

[...]每当我运行我的代码时,我都会得到它,而不是包含一些对象的列表.我想知道它的含义,以便调试我的代码.

python self-reference

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

你怎么称呼自己的函数(这叫做递归)?

我试图找出你称之为引用自身的函数.这被称为递归吗?或者它只是一个自我引用功能?

recursion computer-science self-reference

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

奎因是什么意思?

所以我刚刚在维基百科上看到了Quine一词,但无法弄清楚它到底是什么意思。我对此非常困惑。它有任何实际用途吗?

language-agnostic definition quine self-reference

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

PHP:if($ Name =='ProxiedIP')导致500(内部服务器错误)

这可能是一个问题太模糊,但我一直在排除令人困惑的服务器错误数小时,并将其归结为最奇怪的问题; 在这一点上,我只想知道是否有人曾经发生类似的事情,或者可能对可能发生的事情有任何见解.

以下代码行触发错误:

if ($Name=='ProxiedIP') { return true; }
Run Code Online (Sandbox Code Playgroud)

这个版本运行没有任何问题:

if ($Name=='proxiedIP') { return true; } 
Run Code Online (Sandbox Code Playgroud)

似乎某种方式令牌'ProxiedIP'正在弄脏某些东西,但我甚至无法想到解析器如何以一种可能像这样挂起服务器的方式翻译字符串文字.顺便说一句,我肯定知道$ Name!='proxiedIP'$ Name!='ProxiedIP'.

这是apache错误日志中的条目:

[Fri Jan 18 18:15:12.924419 2013] [core:error] [pid 27676:tid 3427232831232] [client 12.345.67.890:34482] Premature end of script headers: index.php, referer: http://mySite.com/
Run Code Online (Sandbox Code Playgroud)

我搜索了'ProxiedIP'作为我能在系统中思考的每个组件的关键字,我什么也没想到.对我来说更迫切的问题是,字符串如何在比较检查中以某种方式产生这种影响.有任何想法吗?


另外值得注意的是PHP错误日志完全没有提及.我正在页面顶部启用错误输出,但脚本永远不会完成加载,因此这可能是一个因素.这是我设置它的方式:

error_reporting(E_ALL);
ini_set('display_errors', 1);
Run Code Online (Sandbox Code Playgroud)

因为代码在这里起作用,所以它似乎更有可能是平台实现特有的东西.我在Gandi.net的"Simple Hosting"服务实例上运行它,该服务运行Varnish以进行应用程序加速.值得一提的是,代码是在单独的域中的iframe中加载的.

我也正在对标题进行一些密集的工作,这似乎是问题的最大潜在来源,尽管就我所关注的奇怪的是错误被触发的方式.此外,我所知道的没有常见的标题称为"ProxiedIP",尽管使用冲突是迄今为止唯一似乎有意义的事情.无论如何,我没有看到它.

对我而言,真正相关的项目仅仅是字符串比较使服务器崩溃.我已经用PHP编程超过10年了,我从来没有遇到过类似的事情.我正在努力了解它甚至可能发生的物流背后的情况.


更新:我尝试了以下变体,它仍然会产生相同的结果:

if ($Name === (strtoupper("p").'roxiedIP')) { return true; }
Run Code Online (Sandbox Code Playgroud)

有人问我是否会发布完整的代码,但iframe端的脚本长度超过1400行,所以这不太可行.我正在调整有问题的片段以尝试在新脚本中运行它并将发布结果.

php string http-headers self-reference

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

Django:查询没有子元素的自引用对象

我有以下django模型:

class Category(models.Model):
    name = models.CharField(maxlength=20)
    parent = models.ForeignKey('self', null=True)
Run Code Online (Sandbox Code Playgroud)

请注意,该字段parent是自引用的,即类别可以具有父级.

如何查找Category没有子类别的所有对象?

python django self-reference

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

在C++中,如何制作一个可以包含相同变体的矢量的变体?

我试图创建一个std :: variant,它可以包含相同变量的向量:

class ScriptParameter;
using ScriptParameter = std::variant<bool, int, double, std::string, std::vector<ScriptParameter> >;
Run Code Online (Sandbox Code Playgroud)

我正在重新定义ScriptParameter.它认为可能是因为模板参数无法向前声明?

有没有办法实现一个也可以包含相同类型变体数组的变体?

c++ vector self-reference c++17 std-variant

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