相关疑难解决方法(0)

为什么使用'=='或'is'比较字符串有时会产生不同的结果?

我有一个Python程序,其中两个变量设置为该值'public'.在条件表达式中,我的比较var1 is var2失败了,但是如果我将其更改为var1 == var2它则返回True.

现在,如果我打开我的Python解释器并进行相同的"是"比较,它就会成功.

>>> s1 = 'public'
>>> s2 = 'public'
>>> s2 is s1
True
Run Code Online (Sandbox Code Playgroud)

我在这里错过了什么?

python string comparison identity equality

1076
推荐指数
13
解决办法
148万
查看次数

如何在Python中将函数名称作为字符串?

在Python中,如何在不调用函数的情况下将函数名称作为字符串获取?

def my_function():
    pass

print get_function_name_as_string(my_function) # my_function is not in quotes
Run Code Online (Sandbox Code Playgroud)

应该输出"my_function".

这样的功能在Python中可用吗?如果没有,get_function_name_as_string在Python中如何实现任何想法?

python string function

671
推荐指数
14
解决办法
43万
查看次数

如何创建可变数量的变量?

如何在Python中完成变量变量?

这是一个精心设计的手动条目,例如:变量变量

我听说这是一个坏主意,但它是Python中的一个安全漏洞.真的吗?

python variable-variables

315
推荐指数
13
解决办法
12万
查看次数

我可以在Python中打印原始变量的名称吗?

我有枚举并使用变量,如myEnum.SomeNameA,myEnum.SomeNameB等.当我从函数返回其中一个变量时,我可以打印它们的名称(例如myEnum.SomeNameA)而不是它们返回的值吗?

python variables

51
推荐指数
7
解决办法
4万
查看次数

如何获取传递给函数的变量的原始变量名称

是否可以获取传递给函数的变量的原始变量名?例如

foobar = "foo"

def func(var):
    print var.origname
Run Code Online (Sandbox Code Playgroud)

以便:

func(foobar)
Run Code Online (Sandbox Code Playgroud)

返回:

>>foobar

编辑:

我所要做的就是做一个像下面这样的函数:

def log(soup):
    f = open(varname+'.html', 'w')
    print >>f, soup.prettify()
    f.close()
Run Code Online (Sandbox Code Playgroud)

..并让函数从传递给它的变量的名称生成文件名.

我想如果不可能我只需要每次都将变量和变量的名称作为字符串传递.

python variables function

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

获取pandas DataFrame的名称

如何获取DataFrame的名称并将其作为字符串打印?

例:

boston (分配给csv文件的var名称)

boston = read_csv('boston.csv')

print ('The winner is team A based on the %s table.) % boston
Run Code Online (Sandbox Code Playgroud)

python dataframe pandas

38
推荐指数
5
解决办法
7万
查看次数

在类__init __()中获取实例名称

在python中构建一个新的类对象时,我希望能够根据类的实例名创建一个默认值,而不需要传递额外的参数.我怎么能做到这一点?这是我正在尝试的基本伪代码:

class SomeObject():
    defined_name = u""

    def __init__(self, def_name=None):
        if def_name == None:
            def_name = u"%s" % (<INSTANCE NAME>)
        self.defined_name = def_name

ThisObject = SomeObject()
print ThisObject.defined_name   # Should print "ThisObject"
Run Code Online (Sandbox Code Playgroud)

python variables class object instance

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

在Python中获取变量的名称

如果我有任何类型的本地/全局变量,var如何获取其名称,即字符串"var"?即对于某些虚函数或运算符,nameof()下一个代码应该可以工作:

var = 123
assert nameof(var) == "var"
Run Code Online (Sandbox Code Playgroud)

有用于.__name__获取变量保存值的函数或类型对象的名称的属性,但是是否有类似的用于获取变量本身的名称的属性?

这是否可以在不将变量包装到某个神奇对象中的情况下实现,就像某些库为了获取变量名称所做的那样?如果没有魔术包装器就无法实现,那么用于这种情况的最常见/流行的包装库是什么?

python variables

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

python 获取函数中参数的变量名

我想做这样的事情:

fib = 1
foo = (arg):
    print arg, argName # the name of the variable that was put in for arg
foo(fib)
Run Code Online (Sandbox Code Playgroud)

并得到这个返回:

1, fib
Run Code Online (Sandbox Code Playgroud)

python

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

将同键词典连接到pandas中的数据框中

如何用DataFrame两个或多个具有共同键的词典创建一个熊猫?也就是说,转换

d1 = {'a': 1}
d2 = {'a': 3}
...
Run Code Online (Sandbox Code Playgroud)

进入一个数据框,其中包含列['d1', 'd2', ...],行索引"a"和相应字典确定的值?

python dictionary pandas

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