问题列表 - 第23736页

Python类设计 - 将大类拆分为多个类以分组功能

好的,我有2个非常大的类> 1k行,我现在分成多个.然后,他们使用多重继承重新组合.现在我想知道,如果有更干净/更好的pythonic方式这样做.完全将它们分解出去会导致无数的self.otherself.do_something调用,我认为这不应该是它应该完成的方式.

为了使事情清楚,这是它目前的样子:

from gui_events import GUIEvents # event handlers
from gui_helpers import GUIHelpers # helper methods that don't directly modify the GUI

# GUI.py
class GUI(gtk.Window, GUIEvents, GUIHelpers):
    # general stuff here stuff here
Run Code Online (Sandbox Code Playgroud)

造成这种情况的一个问题是Pylint抱怨给我数万亿的"init not called"/"undefined attribute"/"在定义之前访问的属性"警告.

编辑:
你可能想看看代码,让自己想象一下整个事情究竟是什么.
http://github.com/BonsaiDen/Atarashii/tree/next/atarashii/usr/share/pyshared/atarashii/

请注意,我正在尝试将这个东西尽可能保持干燥,我正在使用pylint来检测代码重复,它唯一抱怨的是导入.

python class

15
推荐指数
2
解决办法
6398
查看次数

错误:"非静态字段,方法或属性需要对象引用......"

我正在用C#创建一个应用程序.它的作用是评估给定是否为素数以及相同的交换数是否为素数.

当我在Visual Studio中构建我的解决方案时,它说"非静态字段,方法或属性需要对象引用......".我对"volteado"和"siprimo"方法有这个问题.

问题在哪里,我该如何解决?

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.Write("Write a number: ");
            long a= Convert.ToInt64(Console.ReadLine()); // a is the number given by the user


            long av = volteado(a); // av is "a" but swapped

            if (siprimo(a) == false && siprimo(av) == false)
                Console.WriteLine("Both original and swapped numbers are prime.");
            else
                Console.WriteLine("One of the numbers isnt prime.");
            Console.ReadLine();
        }

        private bool siprimo(long a)
        {
            // Evaluate if the received number is prime
            bool sp …
Run Code Online (Sandbox Code Playgroud)

c#

30
推荐指数
3
解决办法
19万
查看次数

iPad上可用的最大纹理尺寸是多少?

谁知道iPad的最大纹理尺寸?我很难找到这个数字.

textures ipad opengl-es-2.0

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

如何将项目添加到Spinner的ArrayAdapter?

我有一个EditText,一个按钮和一个微调器.单击该按钮时,微调器将添加一个新项目,其中包含您在EditText中输入的名称.但这是问题,我的adapter.add()方法似乎不起作用...这是我的代码:

public class Spr extends Activity {
Button bt1;
EditText et;
ArrayAdapter<CharSequence> adapter;
Spinner spinner;
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    bt1 = (Button)this.findViewById(R.id.bt1);
    et = (EditText)this.findViewById(R.id.et);  
    spinner = (Spinner)this.findViewById(R.id.spr);

    adapter = ArrayAdapter.createFromResource(
            this, R.array.planets_array, android.R.layout.simple_spinner_item);

    adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);

    spinner.setAdapter(adapter);

    bt1.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) {
            String temp = et.getText().toString();

            adapter.add(temp);
            adapter.notifyDataSetChanged();
            spinner.setAdapter(adapter);

        }
    });


    spinner.setOnItemSelectedListener(new Spinner.OnItemSelectedListener(){

        @Override
        public void onItemSelected(AdapterView<?> parent, View view,
                int pos, long id) {

            Toast.makeText(parent.getContext(), "The planet is " +
                      parent.getItemAtPosition(pos).toString(), Toast.LENGTH_LONG).show(); …
Run Code Online (Sandbox Code Playgroud)

android add adapter android-arrayadapter

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

如何使用Perl正则表达式突出显示连续的重复单词?

我想要一个Perl正则表达式,它将匹配字符串中的重复单词.

鉴于以下输入:

$str = "Thus joyful Troy Troy maintained the the watch of night..."
Run Code Online (Sandbox Code Playgroud)

我想要以下输出:

Thus joyful [Troy Troy] maintained [the the] watch of night...

regex perl

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

在Eclipse中禁用构建工作空间进程

在构建工作空间进程时,Eclipse正在做什么?我可以禁用它,因为它需要很长时间才能完成,我不知道是否有必要.谢谢

eclipse workspace

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

需要一个简短明确的"依赖属性"定义

我正在试图找出究竟是什么依赖属性,但当我在任何地方查找定义时,我只找到"如何使用"而不是"它是什么".想象一下,在面试时会被问到 - 什么是依赖财产.你的答案是什么?

c# wpf dependency-properties

17
推荐指数
1
解决办法
5413
查看次数

在C++ construtor中管理bad_alloc异常

我有Java经验,最近正在做一些C++编码.我的问题是,如果我有A类,我必须将B类和C类实例化为A的两个成员变量.

如果在A的构造函数中,我是否应该假设B类和C类的分配永远不会失败,并在A的析构函数中处理错误的分配异常?

如果我没有做出这个假设,意味着我添加了一些try catch块来捕获类B和类C的bad_alloc,那么如果发生分配异常,我应该在A的构造函数中进行清理吗?

推荐的做法是什么?如果"new"生成错误分配,指针会携带什么值?

c++

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

从Google App Engine迁移有多难?

我正在考虑制作一个(最初)小型Web应用程序,它最终有可能增长.所有被认为是Google App Engine的东西似乎都是非常有吸引力的选择.比如,用户群和复杂性都在增长,出于一个或另一个原因,我需要将GAE抛在身后.迁移离开有多困难?

1)GAE是否提供了导出数据库的方法?它是什么格式?难道把它放在MySQL(或类似的)下吗?

2)我必须使用GAE API在哪些区域(例如数据库访问,其他?)?即哪些部分的实现必须被抽象掉/接口?

编辑:3)或者,是否值得抽象GAE API?

migration google-app-engine

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

在Firefox中按Ctrl + r刷新页面和我的PHP代码

我已经创建了一个表单(所以它是PHP和HTML混合代码).它有能力发送'$ _POST'.当我点击它时,它完美地发送和显示输入.

但是当我点击Firefox中的Ctrl+ R来重新刷新页面时会发生一些事情.我得到了这个confim对话框:" 要显示此页面,Firefox必须发送重复执行之前执行的任何操作(例如搜索或订单确认)的信息 "

我的问题

  1. 它是什么,(这个确认对话框?)
  2. 我必须对我的代码做什么才能抑制这个对话框?

html php firefox

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