以下不起作用
one.py
import shared
shared.value = 'Hello'
raw_input('A cheap way to keep process alive..')
Run Code Online (Sandbox Code Playgroud)
two.py
import shared
print shared.value
Run Code Online (Sandbox Code Playgroud)
在两个命令行上运行:
>>python one.py
>>python two.py
Run Code Online (Sandbox Code Playgroud)
(第二个得到属性错误,这是正确的).
有没有办法实现这一点,即在两个脚本之间共享一个变量?
我已经编写并测试了一个WinForms应用程序,一切都在我的机器上工作正常(陈词滥调,我知道).当我创建一个安装项目并将其安装在同事的机器上时,他收到以下消息:
************** Exception Text **************
System.IndexOutOfRangeException: There is no row at position 0.
at System.Data.RBTree`1.GetNodeByIndex(Int32 userIndex)
at System.Data.RBTree`1.get_Item(Int32 index)
at System.Data.DataRowCollection.get_Item(Int32 index)
at MyApp.MainForm.MainForm_Load(Object sender, EventArgs e)
at System.Windows.Forms.Form.OnLoad(EventArgs e)
at System.Windows.Forms.Form.OnCreateControl()
at System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)
at System.Windows.Forms.Control.CreateControl()
at System.Windows.Forms.Control.WmShowWindow(Message& m)
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.ScrollableControl.WndProc(Message& m)
at System.Windows.Forms.ContainerControl.WndProc(Message& m)
at System.Windows.Forms.Form.WmShowWindow(Message& m)
at System.Windows.Forms.Form.WndProc(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
Run Code Online (Sandbox Code Playgroud)
在处理像这样的例外情况时,我会承认我是初学者.该文本对我来说没有多大意义,我不确定调试它的最佳方法,因为我无法在我的机器上发生错误.
任何人都可以告诉问题是什么,或建议我调试这个问题的最佳方法?任何帮助是极大的赞赏!
为什么将php cookie路径设置为"/"不适用于域中的每个子目录,而只适用于当前目录.
cookie设置如下:
setcookie("name", "val", expire_time, "/");
Run Code Online (Sandbox Code Playgroud)
它只是不想工作.
我开始学习Datamapper,我喜欢它的是我可以用真正的继承来编写我的模型.
现在我想知道,如果有可能更加先进:
class Event
include DataMapper::Resource
property :id, Serial
property :begin, DateTime
property :type, Discriminator
end
class Talk<Event
property :title, String
belongs_to :meeting
end
class Meeting<Event
has n, :talks
end
Run Code Online (Sandbox Code Playgroud)
该代码无法创建:title为列Talk,显然,鉴别列是没有什么价值在这里,因为从一个数据库视图,应该有两个单独的表Talk和Meeting.
所以,最后,我希望Talk和Meeting共享相同的属性,Event但有可能的附加属性和0..1:n关系(一个会议可以有几个会谈,但没有会议的会谈.)有吗一种方法来实现这一点,而无需重复列定义和/或放弃继承?
编辑
再举一个例子:我喜欢继承事物的部分是,Event可以单独查询一般信息.所以,当我想知道,如果某个:begin日期有什么东西,我不需要查看两个或更多的表,但只能查询Event表.在某种程度上,以下结构可以满足我的需求.
class Event
include DataMapper::Resource
property :id, Serial
property :begin, DateTime
end
class Talk
include DataMapper::Resource
property :id, Serial
property :title, String
belongs_to :event
belongs_to …Run Code Online (Sandbox Code Playgroud) 我目前正在尝试以下xpath
//tr[normalize-space(td/text())='User Name']
Run Code Online (Sandbox Code Playgroud)
让所有包含包含TD的TR 'User Name'或'User Name'或' User Name ',但它不工作,我不知道什么是错的查询:(
我想找到的数据是按以下格式
<tr><td>User Name</td></tr>
<tr><td>User Name</td></tr>
<tr><td> User Name </td></tr>
Run Code Online (Sandbox Code Playgroud)
那么编写这个xpath查询的正确格式是什么?
编辑:如果数据采用以下格式,则似乎无效
<tr><td>x</td><td>User Name</td></tr>
<tr><td>x</td><td>y</td><td>User Name</td></tr>
<tr><td>x</td><td>y</td><td>z</td><td> User Name </td></tr>
Run Code Online (Sandbox Code Playgroud)
那么现在我该如何编写xpath查询?
注意:"// tr [normalize-space(td/text())='用户名']"不会工作
但是"// tr/td [normalize-space(text())='用户名']"将工作(但我想得到tr而不是td元素)
我正在为课堂上的家庭作业问题做准备.我想启动一个侦听文件请求的UDP服务器.它打开文件并使用UDP将其发送回请求客户端.
继承人的服务器代码.
// Create UDP Socket
if ((sockfd = socket(AF_INET, SOCK_DGRAM, 0)) == -1) {
perror("Can't create socket");
exit(-1);
}
// Configure socket
memset(&server, 0, sizeof server);
server.sin_family = AF_INET; // Use IPv4
server.sin_addr.s_addr = htonl(INADDR_ANY); // My IP
server.sin_port = htons(atoi(argv[1])); // Server Port
// Bind socket
if ((bind(sockfd, (struct sockaddr *) &server, sizeof(server))) == -1) {
close(sockfd);
perror("Can't bind");
}
printf("listener: waiting to recvfrom...\n");
if (listen(sockfd, 5) == -1) {
perror("Can't listen for connections");
exit(-1);
}
while (1) …Run Code Online (Sandbox Code Playgroud) LALR(2)是否能够自然地处理悬空的情况(没有任何特殊规则,如LALR(1))?
谢谢
编辑:请注意,这在生产代码中是一个非常糟糕的想法.这对我来说只是一个有趣的事情.不要在家里这样做!
是否可以在Python中修改整个程序(解释器)的__metaclass__变量?
这个简单的例子是:
class ChattyType(type):
def __init__(cls, name, bases, dct):
print "Class init", name
super(ChattyType, cls).__init__(name, bases, dct)
__metaclass__= ChattyType
class Data:
pass
data = Data() # prints "Class init Data"
print data
Run Code Online (Sandbox Code Playgroud)
但我希望能够改变__metaclass__甚至在子模块中工作.例如(文件m1.py):
class A:
pass
a=A()
print a
Run Code Online (Sandbox Code Playgroud)
文件main.py:
class ChattyType(type):
def __init__(cls, name, bases, dct):
print "Class init", name
super(ChattyType, cls).__init__(name, bases, dct)
__metaclass__= ChattyType
import m1 # and now print "Class init A"
class Data:
pass
data = Data() # print "Class init Data"
print …Run Code Online (Sandbox Code Playgroud) 假设我有一个像这样的Django类:
class Person(models.Model):
name = models.CharField(max_length=50)
# ...
Run Code Online (Sandbox Code Playgroud)
我如何以编程方式获得max_length该name字段的值?
有没有办法在Ruby中动态创建数组?例如,假设我想循环浏览一系列书籍作为用户的输入:
books = gets.chomp
用户输入:
"The Great Gatsby, Crime and Punishment, Dracula, Fahrenheit 451,
Pride and Prejudice, Sense and Sensibility, Slaughterhouse-Five,
The Adventures of Huckleberry Finn"
Run Code Online (Sandbox Code Playgroud)
我把它变成一个数组:
books_array = books.split(", ")
Run Code Online (Sandbox Code Playgroud)
现在,对于每本书的用户输入,我想用Ruby来创建一个数组.伪代码来做到这一点:
x = 0
books_array.count.times do
x += 1
puts "Please input weekly sales of #{books_array[x]} separated by a comma."
weekly_sales = gets.chomp.split(",")
end
Run Code Online (Sandbox Code Playgroud)
显然这不起作用.它会weekly_sales一遍又一遍地重新定义.有没有办法实现我所追求的,并且.times方法的每个循环都创建一个新数组?