Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/321.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python for循环试图实现什么_Python_String_Dictionary_Tuples - Fatal编程技术网

Python for循环试图实现什么

Python for循环试图实现什么,python,string,dictionary,tuples,Python,String,Dictionary,Tuples,这可能很简单,但有人能解释一下下面的内容是什么意思吗 def clean_param_value(self, value): for s, r in (('<', '{'), ('>', '}'), (' ', '_')): value.replace(s, r) 在for循环中,变量s和r被分配给它循环通过元组('''.'}')、(''''.''''.'''.''.'和r,分别作为元组中的第一个和第二个元素 然后它进行替换,最终替换第一个代码 用于s,r中

这可能很简单,但有人能解释一下下面的内容是什么意思吗

def clean_param_value(self, value):
    for s, r in (('<', '{'), ('>', '}'), (' ', '_')):
        value.replace(s, r)

for
循环中,变量
s
r
被分配给
它循环通过元组
('''.'}')、(''''.''''.'''.''.'
r
,分别作为元组中的第一个和第二个元素

然后它进行替换,最终替换第一个代码
用于s,r中的((“您已经描述了发生的事情,那么您觉得困惑的是什么呢?这里大概缺少了
值=
返回值
,因为发布的代码不会替换任何内容。@MartijnPieters,感谢您指出它。进行了相应的编辑。您确实想说明函数的内容吗?”(大概)实现。就目前情况而言,发布的代码根本不会起任何作用。很高兴你展示了正确有效的方法,但你还没有真正回答问题。你知道在
str
上有一个静态方法吗?@MartijnPieters,不,我不知道。再次感谢你。感谢你的澄清,非常感谢需要明确的是,OP提供的代码没有任何用处。假设
value
是一个字符串,
value.replace(s,r)
返回一个新字符串,但
value
本身没有更改。
    params = dict(
        (item['ParameterName'],
         self.clean_param_value(item['ParameterValue']))
        for item in cursor.fetchall()
        )
def clean_param_value(self, value):
    for s, r in (('<', '{'), ('>', '}'), (' ', '_')):
        # s, r = '<', '{'  # 1st iteration
        # s, r = '>', '}'  # 2nd iteration
        # s, r = ' ', '_'  # 3rd iteration
        value = value.replace(s, r)
    return value
>>> import string
>>> tbl = string.maketrans('<> ', '{}_')
>>> '<hello world>'.translate(tbl)
'{hello_world}'
>>> tbl = str.maketrans('<> ', '{}_')
>>> '<hello world>'.translate(tbl)
'{hello_world}'
>>> rows = [
...     {'name': 'dog', 'value': 'bow wow', 'other_value': 'blah'},
...     {'name': 'cat', 'value': 'meow meow', 'other_value': 'other blah'},
... ]
>>> dict((item['name'], item['value']) for item in rows)
{'dog': 'bow wow', 'cat': 'meow meow'}
>>> dict((item['name'], clean_param_value(item['value'])) for item in rows)
{'dog': 'bow_wow', 'cat': 'meow_meow'}
>>> {item['name']: clean_param_value(item['value']) for item in rows}
{'dog': 'bow_wow', 'cat': 'meow_meow'}