相关疑难解决方法(0)

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

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

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

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

python variable-variables

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

为什么使用'eval'是一种不好的做法?

我正在使用以下课程轻松存储我的歌曲数据.

class Song:
    """The class to store the details of each song"""
    attsToStore=('Name', 'Artist', 'Album', 'Genre', 'Location')
    def __init__(self):
        for att in self.attsToStore:
            exec 'self.%s=None'%(att.lower()) in locals()
    def setDetail(self, key, val):
        if key in self.attsToStore:
            exec 'self.%s=val'%(key.lower()) in locals()
Run Code Online (Sandbox Code Playgroud)

我觉得这比写出一个if/else块更具可扩展性.但是,eval似乎被认为是一种不良做法并且使用起来不安全.如果是这样,任何人都可以向我解释为什么并告诉我一个更好的方法来定义上面的类?

python eval

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

如何访问对应于该属性名称的给定字符串的对象属性

如何设置/获取t给定的属性值x.

class Test:
   def __init__(self):
       self.attr1 = 1
       self.attr2 = 2

t = Test()
x = "attr1"
Run Code Online (Sandbox Code Playgroud)

python attributes object

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

从Python中的函数返回名称中的变量

我正在尝试使用函数返回给定列表.

def get_ext(file_type):
    text = ['txt', 'doc']
    audio = ['mp3', 'wav']
    video = ['mp4', 'mkv']
    return ?????

get_ext('audio')  #should return de list ['mp3', 'wav']
Run Code Online (Sandbox Code Playgroud)

然后我被卡住了.这是一个扩展列表的简单/简短示例.最简单的方法是什么?

python function list

11
推荐指数
2
解决办法
3696
查看次数

标签 统计

python ×4

attributes ×1

eval ×1

function ×1

list ×1

object ×1

variable-variables ×1