问题列表 - 第32631页

如何释放对象中的Python列表?

我有一个包含列表的Python类,我append()重视它.

如果我删除此类的对象然后在同一脚本中创建第二个对象,则第二个对象的列表与删除时的第一个对象的列表相同.

例如:

class myObj:
    a = []
    b = False

o = myObj()
o.a.append("I'm still here!")
o.b = True

del o
import gc
gc.collect() # just to be safe
o = myObj()

print(o.a) # ["I'm still here!"]
print(o.b) # False
Run Code Online (Sandbox Code Playgroud)

一种方法来清空列表:

while len(o.a):
    o.a.pop()
Run Code Online (Sandbox Code Playgroud)

但那太荒谬了,更不用说慢了.为什么它在垃圾收集后仍然在内存中,更重要的是为什么它不会在类进入时被覆盖?正确处理所有非列表成员变量.append(),extend()并且insert()都导致相同的结果 - 我应该使用另一种方法吗?

这是我的完整测试脚本.请注意,如果我尝试直接删除成员列表,Python会给出一个AttributeError,即使我可以从中读取它.

python list

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

关键任务实时应用程序中的安全c ++

我想听听各种意见如何在关键任务实时应用程序中安全地使用c ++.

更确切地说,可能可以创建一些宏/模板/类库来进行安全数据操作(密封溢出,zerodivides产生无穷大值或仅对特殊的"非零"数据类型进行除法),具有绑定检查和foreach循环的数组,安全的智能指针(例如类似于boost shared_ptr)甚至安全的多线程/分布式模型(消息传递和轻量级进程,如在Erlang语言中定义的).

然后我们禁止一些危险的c/c ++构造,如原始指针,一些原始类型,本机"新"操作符和本机c/c ++数组(对于应用程序员,当然不是库编写者).理想情况下,我们应该创建一个特殊的预处理器/检查器,至少我们必须有一些正式的检查程序,可以使用某些工具或某些人手动应用于源.

所以,我的问题:

1)是否有任何现有的图书馆/项目利用这样的想法?(嵌入式c ++显然不是理想的那种)?

2)这根本不是一个好主意吗?或者它可能只对原型化另一种时髦的语言有用吗?或者它完全无法使用?

3)关于此事的任何其他想法(或链接)也欢迎

对不起,如果这个问题实际上不是一个问题,offtopic,重复等,但我没有找到更合适的地方问它

c++ embedded real-time

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

如何将CSS类添加到BoundField,以便我可以使用jQuery找到它?

我想在GridView控件中为我的一些BoundFields添加一个类名; 因此,一旦GridView被数据绑定并呈现,我就可以获得如下内容:

<td class="Tag1">Some data came from data source</td>
Run Code Online (Sandbox Code Playgroud)

这样做的目的是能够以这种方式找到所有"Tag1"的元素:

var allTag1td = $('td.Tag1');
Run Code Online (Sandbox Code Playgroud)

那么,我怎样才能将这个类添加到BoundField中,以便以这种方式呈现它?

css asp.net jquery gridview

21
推荐指数
3
解决办法
5万
查看次数

面向对象编程的替代方案?

OOP可能是当今软件设计中使用最多的编程范例.我的问题是 - 其他范例可以与之竞争并且可以代替oop?为了澄清这个问题,我不是在询问其他范例是什么.其中有很多,我想知道哪一个:

  • 已经在实践中使用,不仅在理论上.
  • 可以与oop竞争,因此它可以在没有或最少痛苦的大型项目中使用.
  • 可用于开发具有业务逻辑,数据库等的桌面应用程序.
  • 不与oop的伴侣一起使用,但可以替换oop.

如果有的话,它的优缺点是什么,为什么它比oop更好/更差,最好用什么语言,在流行的语言中使用它,有任何设计模式,还可以完全取代oop?

language-agnostic oop paradigms programming-languages

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

目标C:我如何确定一个数字是否可以被另一个数字整除?

在目标c(Mac开发).如何判断一个数字是否可以被另一个数字整除而不是小数?

macos objective-c

7
推荐指数
2
解决办法
7858
查看次数

在VS 2010中,右击突然变得无法忍受

我一直在使用VS2010没有任何问题,总是在同一个应用程序上.突然之间,我的解决方案在右键单击时变得难以忍受.在做其他项目时,没关系.我唯一能想到的就是禁用了SQL Server调试.

如果我在代码编辑器中的任何地方右击,就会发生 一切都冻结了大约一分半钟,然后出现右键菜单.如果我马上再试一次,同样的事情就会发生.

Intellisense似乎工作正常.它只是右键单击.

该项目相当大,但一直运作良好.我正在开发一款2个月前的MacBook Pro顶级产品(在Boot Camp中运行Windows 7 64位).在过去的24小时里,我确实做了周二大批微软补丁修补程序......

任何人都可以建议去哪里看看?

vb.net ide visual-studio-2010

5
推荐指数
1
解决办法
1274
查看次数

使用反射查找具有自定义属性的方法

我有一个自定义属性:

public class MenuItemAttribute : Attribute
{
}
Run Code Online (Sandbox Code Playgroud)

和一个有几个方法的类:

public class HelloWorld
{
    [MenuItemAttribute]
    public void Shout()
    {
    }

    [MenuItemAttribute]
    public void Cry()
    {
    }

    public void RunLikeHell()
    {
    }
}
Run Code Online (Sandbox Code Playgroud)

如何只获取使用自定义属性修饰的方法?

到目前为止,我有这个:

string assemblyName = fileInfo.FullName;
byte[] assemblyBytes = File.ReadAllBytes(assemblyName);
Assembly assembly = Assembly.Load(assemblyBytes);

foreach (Type type in assembly.GetTypes())
{
     System.Attribute[] attributes = System.Attribute.GetCustomAttributes(type);

     foreach (Attribute attribute in attributes)
     {
         if (attribute is MenuItemAttribute)
         {
             //Get me the method info
             //MethodInfo[] methods = attribute.GetType().GetMethods();
         }
     }
}
Run Code Online (Sandbox Code Playgroud)

我现在需要的是获取方法名称,返回类型以及它接受的参数.

c# reflection custom-attributes

48
推荐指数
3
解决办法
5万
查看次数

在xslt中将dateTime转换为unix纪元

我有一个dateTime变量,我想将其转换为epoch的十进制值.如何才能做到这一点?

我试过用:

seconds-from-duration($time, xs:dateTime('1970-01-01T00:00:00'))
Run Code Online (Sandbox Code Playgroud)

但它只返回0.

请指教.谢谢.

xslt xpath datetime xslt-2.0 xpath-2.0

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

sql:选择不在

如何使用JOIN重写以下查询

SELECT * 
FROM table1 
WHERE id NOT IN 
( 
    SELECT t1Id 
    FROM table2 
);
Run Code Online (Sandbox Code Playgroud)

mysql sql

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

这是有效的电子邮件地址吗?

"Françoise Lefèvre"@example.com
Run Code Online (Sandbox Code Playgroud)

我正在阅读RFC 5321,试图真正理解什么是有效的电子邮件地址 - 而且我可能会让它变得比它需要的更难 - 但这一直困扰着我.

               i.e., within a quoted string, any
               ASCII graphic or space is permitted
               without blackslash-quoting except
               double-quote and the backslash itself.
Run Code Online (Sandbox Code Playgroud)

这是否意味着ASCII扩展字符集在引号内有效?或者这仅仅意味着标准的ASCII表

编辑 - 考虑到答案,这里有一个简单的jQuery 验证器,可以补充插件的内置电子邮件验证来检查字符.

jQuery.validator.addMethod("ascii_email", function( value, element ) { 
    // In compliance with RFC 5321, this allows all standard printing ASCII characters in quoted text.
    // Unquoted text must be ASCII-US alphanumeric or one of the following: ! # $ % & ' …
Run Code Online (Sandbox Code Playgroud)

javascript email jquery rfc

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