我几乎不知道OOP术语和概念.我从概念上知道对象是什么,对象有方法.我甚至明白在python中,类是对象!那很酷,我只是不知道它意味着什么.它没有点击我.
我目前正在尝试理解一些我认为将阐明我对python的理解的详细答案:
在第一个答案中,作者使用以下代码作为示例:
>>> class Bank(): # let's create a bank, building ATMs
... crisis = False
... def create_atm(self) :
... while not self.crisis :
... yield "$100"
Run Code Online (Sandbox Code Playgroud)
我不会立即弄清楚self指向的是什么.这绝对是不理解类的一个症状,我将在某些时候开展工作.澄清,在
>>> def func():
... for i in range(3):
... print i
Run Code Online (Sandbox Code Playgroud)
我理解i指向列表中的项目range(3),因为它在函数中,不是全局的.但是什么self"指向"?
我按照Rails教程使用Guard和Spork设置自动化测试.每隔一段时间,特别是在我的编辑器中保存未经编辑的模板时,Guard会抱怨(完全回溯):
ERROR: Problem with watch action!
undefined method `singularize' for "layouts":String
Run Code Online (Sandbox Code Playgroud)
我的Guardfile:
# A sample Guardfile
# More info at https://github.com/guard/guard#readme
guard 'rspec', :version => 2, :all_after_pass => false, :cli => '--drb' do
watch(%r{^spec/.+_spec\.rb$})
watch(%r{^lib/(.+)\.rb$}) { |m| "spec/lib/#{m[1]}_spec.rb" }
watch('spec/spec_helper.rb') { "spec" }
# Rails example
watch(%r{^spec/.+_spec\.rb$})
watch(%r{^app/(.+)\.rb$}) { |m| "spec/#{m[1]}_spec.rb" }
watch(%r{^app/(.*)(\.erb|\.haml)$}) { |m| "spec/#{m[1]}#{m[2]}_spec.rb" }
watch(%r{^lib/(.+)\.rb$}) { |m| "spec/lib/#{m[1]}_spec.rb" }
watch(%r{^app/controllers/(.+)_(controller)\.rb$}) do |m|
["spec/routing/#{m[1]}_routing_spec.rb",
"spec/#{m[2]}s/#{m[1]}_#{m[2]}_spec.rb",
"spec/acceptance/#{m[1]}_spec.rb",
"spec/requests/#{m[1].singularize}_pages_spec.rb"] ### Look here …Run Code Online (Sandbox Code Playgroud) 在org-mode,按M-S-RET(元移位返回)将TODO在新线上创建新的.此密钥序列M-RET通过我的终端发送到emacs.我已经检查了这个C-h c ESC-S-RET,它返回M-RET is undefined迷你缓冲区.
我正在使用Snow Leopard和在Terminal.app中运行的Emacs 23.2.1.没有选项RET在终端键盘首选项中定义序列.
有什么想法导致失踪SHIFT?解决方法?
我正在尝试学习org-mode并注意到当我退出emacs时我的文件整齐折叠.当按下S-TAB试图展开整个文件时,我在迷你缓冲区中收到以下错误消息:M-[ z is undefined.谷歌搜索错误没有帮助.知道呃逆发生在哪里以及我如何解决它?
我正在使用Mac OS X 10.6.4和Terminal.app,GNU Emacs 23.2.1.
编辑:我现在可以确认问题是Terminal.app.我没有收到使用Carbon Emacs或在iTerm.app中使用Emacs时出现此错误消息.
感谢Gilles耐心地为我提供解决方案.
我正试图rake db:test:prepare从另一个任务执行.
namespace :db do
namespace :populate do
desc "Seed development database"
task development: :environment do
puts "Kill local server"
%x{ ps xauwww | grep -i --regex="[t]hin" | awk '{print $2}' | xargs kill }
puts "Resetting development database"
Rake::Task['db:reset'].execute
puts "Migrating development database"
Rake::Task['db:migrate'].execute
puts "Populating development database"
Rake::Task['db:populate'].execute
puts "Pepare test database"
Rake::Task['db:test:prepare'].execute
puts "Start local server"
system 'thin -d start'
end
…
end
Run Code Online (Sandbox Code Playgroud)
使用invoke而不是execute无济于事.如果我自己定义它似乎工作正常:
task example: :environment do
Rake::Task['db:test:prepare'].execute
end
Run Code Online (Sandbox Code Playgroud)
当我运行时rake db:populate:development,所有任务都在运行,除了Rake::Task['db:test:prepare'].execute …
在将旧笔记从org语法转换为mmd,我使用Clean Text应用程序删除额外的换行符和非unicode字符,并转换为安全的行结尾.将文本粘贴回Sublime Text 2时,我发现了几个奇怪的字符.我真的不太关心为什么他们在那里,我只想知道这些角色是什么,以及它们是否可以使用正则表达式进行搜索?

我试图在GraphViz中绘制一个广泛的表格游戏。编译代码会生成一张在所有方面都正确的图形,唯一一种图形是正确的。我希望将“战争”标签放置在它所标记的边缘的左侧,以使边缘最接近“ r”而不是“ W”。
到目前为止,这是我的“游戏”或图表:
digraph hierarchy_of_D {
graph [rankdir ="UD"]
node [color=black,shape=circle]
//splines="polyline"
I [label="R"]
subgraph infoset1
{
label="whatever"
rank="same"
1 [label="C"]
2 [label="C"]
}
I -> 1 [label="War"] //fix how this floats right of the line
I -> 2 [label="Peace"]
1 -> 2 [style=dashed, dir=none]
subgraph info21
{
rank="same"
3 [label="(2,2)", rank=sink, shape="plaintext"]
4 [label="(5,1)", rank=sink, shape="plaintext"]
5 [label="(1,5)", rank=sink, shape="plaintext"]
6 [label="(4,4)", rank=sink, shape="plaintext"]
}
1 -> 3 [label="War"]
1 -> 4 [label="Peace"]
2 -> 5 [label="War"]
2 …Run Code Online (Sandbox Code Playgroud) 尽管我使用 Django 的 ORM 来实现这些表,但我有意将此作为一个一般性问题来构建。如果你想看一看,这是我的 Django 模型。
我有几个表具有以下关系:
Survey <--m2o-- Page <--m2o-- Category <--m2o-- Question <--m2o-- Choice <--?-- Response
| | | | |
|- name |-number |- name |- sortid |- sortid
|- sortid |- text |- text
|- text |- short
|- qtype
Run Code Online (Sandbox Code Playgroud)
m2o多对一的简写在哪里,每个表都有一个隐式主键,我的问题是关于如何组织响应表。
响应表应该与用户表有某种关系(取决于表定义,这可能是一对一或多对一)。该表的目的是存储用户对特定问题的回答。我遇到的问题是,根据问题类型,我需要将响应存储在响应表中的不同列类型中。例如一个表可能类似于:
| user | (question) | (qtype) | choice | response |
|------+------------+-----------------+-----------+-------------------------------|
| 1 | Q1 | Select One | A | False |
| 1 | '' | …Run Code Online (Sandbox Code Playgroud)