-1

"u '"文字を置き換えたいのですが"'"、グーグルで解決策を見つけました。

私はこのバージョンのpythonを持っています:

user@ubuntu:/media/DATA/prototi/prototypefin4$ python --version
Python 2.7.4

私は置換と情報を試します:

strg = jsondict.replace("u'", "'")
        print "\n\n\n\n\n\n\n\n\n\n\n"
        print strg 
        print "\n\n\n\n\n\n\n"

そして、cherrypy のサーバーでは、次のエラーが発生します。

    Traceback (most recent call last):
  File "/usr/lib/python2.7/dist-packages/cherrypy/_cprequest.py", line 656, in respond
    response.body = self.handler()
  File "/usr/lib/python2.7/dist-packages/cherrypy/lib/encoding.py", line 188, in __call__
    self.body = self.oldhandler(*args, **kwargs)
  File "/usr/lib/python2.7/dist-packages/cherrypy/_cpdispatch.py", line 34, in __call__
    return self.callable(*self.args, **self.kwargs)
  File "web_editormy.py", line 585, in save_demo
    strg = jsondict.replace("u'", "'")
AttributeError: 'dict' object has no attribute 'replace'

これは変数 jsondict です:

{u'demo_title': u'Demo title', u'proc1_script': u'script.sh parameters', u'inputp3_id': u'pepepe', u'outputp2_value': u'boh', u'demo_input_description': u'hola mundo', u'titleimg3': u'Gardens', u'outputp4_visible': u'on'}

この恐怖を消し去りたいu

この変数の内容jsondictをファイルに出力するためです。だからこれがない方が心地よいu

なぜ置換を機能させないのですか?

Pythonのライブラリが恋しいですか?

これらは私がロードしたものです

   # -*- coding: utf-8 -*-

import urllib


import hashlib
from datetime import datetime
from random import random

#################################################

import json
from StringIO import StringIO

import re

#################################################

from mako.template import Template
from mako.lookup import TemplateLookup
from mako.exceptions import RichTraceback

#################################################

import os, shutil
from lib import index_dict, http_redirect_303

import zipfile
import sys

######################3

import cherrypy
from cherrypy.lib.static import serve_file

from config import file_dict

どこが間違っていますか?

4

2 に答える 2

1

jsondict は、データを保存する辞書ですか? dict のすべての属性を検索します。「replace」という名前の artribute はありません。そのため、dict からデータを string として読み取り、文字列のメソッド「replace」を使用して「u」を置き換える必要がある場合があります。 「」。

あなたがやろうとしていることのいくつかの誤解.実際には、「u'」はdictの値の一部ではありません.strがユニコードであることを意味します.「u'」を削除したい場合は、次のようにすることができます: dict['key'] = dict['key'].encode('utf-8'),jsondict全体をエルゴードにする必要があります。

于 2013-07-08T02:14:54.797 に答える