相关疑难解决方法(0)

2149
推荐指数
17
解决办法
65万
查看次数

我怎样才能用Python代表'Enum'?

我主要是一名C#开发人员,但我目前正在使用Python开发一个项目.

我怎样才能在Python中表示Enum的等价物?

python enums python-3.x

1146
推荐指数
28
解决办法
80万
查看次数

"=="和"是"之间有区别吗?

我的Google-fu让我失望了.

在Python中,以下两个相等的测试是否等效?

n = 5
# Test one.
if n == 5:
    print 'Yay!'

# Test two.
if n is 5:
    print 'Yay!'
Run Code Online (Sandbox Code Playgroud)

对于您要比较实例的对象(list比如说),这是否适用?

好的,所以这样的答案我的问题:

L = []
L.append(1)
if L == [1]:
    print 'Yay!'
# Holds true, but...

if L is [1]:
    print 'Yay!'
# Doesn't.
Run Code Online (Sandbox Code Playgroud)

所以==测试值测试的地方is是否是同一个对象?

python equality reference semantics

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

生成器表达式与列表理解

什么时候应该使用生成器表达式?什么时候应该在Python中使用列表推导?

# Generator expression
(x*2 for x in range(256))

# List comprehension
[x*2 for x in range(256)]
Run Code Online (Sandbox Code Playgroud)

python list-comprehension generator

390
推荐指数
7
解决办法
13万
查看次数

"foo is None"和"foo == None"之间有什么区别吗?

之间有什么区别:

if foo is None: pass
Run Code Online (Sandbox Code Playgroud)

if foo == None: pass
Run Code Online (Sandbox Code Playgroud)

我在大多数Python代码(以及我自己编写的代码)中看到的约定是前者,但我最近遇到了使用后者的代码.None是NoneType的实例(也是唯一的实例,IIRC),所以没关系,对吧?它有什么可能的情况吗?

python

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

Python有像Perl 5.10的"状态"变量吗?

在Perl 5.10中,我可以说:

sub foo () {
  state $x = 1;
  say $x++;
}

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

......它会打印出来:

1
2
3
Run Code Online (Sandbox Code Playgroud)

Python有这样的东西吗?

python perl

8
推荐指数
5
解决办法
1200
查看次数

在Python环境中管理Perl习惯

Perl的习惯很难.变量声明,作用域,全局/本地在两种语言之间是不同的.是否有一组推荐的python语言习语,它们将使从perl编码到python编码的过渡变得不那么痛苦.

微妙的变量拼写错误会浪费大量时间.

我理解变量声明问题在python人员中是准宗教我不是在争论语言变化或功能,只是两种语言之间的可靠桥梁,这不会导致我的perl习惯沉没我的python努力.

谢谢.

python perl transitions

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