python:如何使用Python2.6以以下样式输出字典键和值?

2024-09-27 21:33:40 发布

您现在位置:Python中文网/ 问答频道 /正文

args =[]
csstidy_opts = {
    '--allow_html_in_templates':False,
    '--compress_colors':False,
    '--compress_font-weight':False,
    '--discard_invalid_properties':False,
    '--lowercase_s':false,
    '--preserve_css':false,
    '--remove_bslash':false,
    '--remove_last_;':false,
    '--silent':False,
    '--sort_properties':false,
    '--sort_selectors':False,
    '--timestamp':False,
    '--merge_selectors':2,  
}
for key value in csstidy_opts.item():
   args.append(key)
   args.append(':')
   args.append(value)

我想输出字符串如下:

“--允许\u html \u in \u templates=false--压缩\u colors=false…”

如果我添加条件,如何执行:

如果值为false,则不会在字符串中输出键和值(只输出true键和其他键)


Tags: infalsehtmlargspropertiessortcompressremove
2条回答

我会这样做:

" ".join("%s=%s" % (k, v) for k, v in csstidy_opts.iteritems() if v is not False)

不确定只输出“true键”的确切含义,但这不会输出在输入字典中设置为False的内容。你知道吗

编辑:

如果需要将参数放入args中,可以执行类似的操作:

args = ["%s=%s" % (k, v) for k, v in csstidy_opts.iteritems() if v is not False]

你可以这样做:

csstidy_opts = {
    ' allow_html_in_templates':False,
    ' compress_colors':False,
    ' compress_font-weight':False,
    ' discard_invalid_properties':False,
    ' lowercase_s':False,
    ' preserve_css':False,
    ' remove_bslash':False,
    ' remove_last_;':False,
    ' silent':False,
    ' sort_properties':False,
    ' sort_selectors':False,
    ' timestamp':False,
    ' merge_selectors':2,  
}

a = ""
for key,value in csstidy_opts.iteritems():    
    if value != False:
        a+=key+'='+str(value)+' '
 print a

输出为

 merge_selectors=2

也要注意假需要假

相关问题 更多 >

    热门问题