小编Ben*_*ler的帖子

将字典转换为JSON数组时的TypeError

如何获取python字典,其中键和值是字符串并将其转换为JSON字符串.

这就是我现在所拥有的:

import json

def create_simple_meeting(subject, startDate, endDate, location, body):
    info = dict()
    if(subject != ""):
        info["subject"] = subject
    if(startDate != ""):
        info["startDate"] = startDate
    if(endDate != ""):
        info["endDate"] = endDate
    if(body != ""):
        info["body"] = body
    if(location != ""):
        info["location"] = location
    print(json.dumps(dict))

create_simple_meeting("This is the subject of our meeting.","2014-05-29 11:00:00","2014-05-29 12:00:00", "Boca Raton", "We should definitely meet up, man")
Run Code Online (Sandbox Code Playgroud)

它给了我这个错误

  File "/Users/bens/Documents/workspace/Copy of ws1 for py java playing/opias/robot/libs/playing.py", line 15, in create_simple_meeting
    print(json.dumps(dict))
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/json/__init__.py", line 243, in …
Run Code Online (Sandbox Code Playgroud)

python json dictionary

28
推荐指数
1
解决办法
5万
查看次数

相当打印json但保持内部数组在一行python

我正在使用以下代码在Python中打印json:

json.dumps(json_output, indent=2, separators=(',', ': ')
Run Code Online (Sandbox Code Playgroud)

这打印我的json像:

{    
    "rows_parsed": [
        [
          "a",
          "b",
          "c",
          "d"
        ],
        [
          "e",
          "f",
          "g",
          "i"
        ],
    ]
}
Run Code Online (Sandbox Code Playgroud)

但是,我希望它打印如下:

{    
    "rows_parsed": [
        ["a","b","c","d"],
        ["e","f","g","i"],
    ]
}
Run Code Online (Sandbox Code Playgroud)

如何将数组中的数组全部保存在一行上?

python arrays json dictionary pretty-print

18
推荐指数
1
解决办法
2622
查看次数

zsh中奇怪的"工作"行为

我正在用怪异的行为jobs,fgbg在我的zsh shell命令.这是一个例子(这适用于所有命令,而不仅仅是python):

$ python &
[1] 21214
Python 2.7.8 (default, Oct 19 2014, 16:02:00)
[GCC 4.2.1 Compatible Apple LLVM 6.0 (clang-600.0.54)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
[1]  + 21214 suspended (tty output)  python
$ jobs
[1]  + suspended (tty output)  python
$ fg 1
fg: job not found: 1
$ bg 1
bg: job not found: 1
Run Code Online (Sandbox Code Playgroud)

我在OS X上使用标准的oh-my-zsh安装.

bash jobs zsh

15
推荐指数
1
解决办法
3338
查看次数

`nullable = False`如何在SQLAlchemy中工作

来自SQLAlchemy docs:

nullable - 如果设置为默认值True,则表示该列将呈现为允许NULL,否则呈现为NOT NULL.此参数仅在颁发CREATE TABLE语句时使用.

我认为设置nullable=True一个列基本上使得Column需要.例如:

class Location(db.Model):
    __tablename__ = 'locations'
    id = db.Column(db.Integer, primary_key=True)
    latitude = db.Column(db.String(50), nullable=False)
    ...
Run Code Online (Sandbox Code Playgroud)

但是,当我创建一个Location没有纬度字段的实例时,我没有收到错误!

Python 2.7.8 (default, Oct 19 2014, 16:02:00)
[GCC 4.2.1 Compatible Apple LLVM 6.0 (clang-600.0.54)] on darwin
Type "help", "copyright", "credits" or "license" for more information.

>>> Location(latitude=None)
<app.models.Location object at 0x10dce9dd0>
Run Code Online (Sandbox Code Playgroud)

到底是怎么回事?

python sqlalchemy flask-sqlalchemy

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

Android文本到语音的初始化非常慢

我的应用程序被视障人士使用,因此它严重依赖于文本到语音.应用程序调用API并向用户读取加载(使用android.speech.tts.TextToSpeech)一些相关信息.

一切都很好,除了我注意到有时文本到语音的初始化需要10秒或更长时间,这是我的应用程序的主要瓶颈.

我想知道是否有人对如何优化我的代码以缓解此问题有任何想法.

首先,我的应用程序启动一项活动来检查TTS数据.

    Intent checkIntent = new Intent();
    checkIntent.setAction(TextToSpeech.Engine.ACTION_CHECK_TTS_DATA);
    startActivityForResult(checkIntent, MY_DATA_CHECK_CODE);
Run Code Online (Sandbox Code Playgroud)

然后,使用活动的结果调用此方法.根据结果​​,文本到语音只是初始化(这几乎总是发生)或文本到语音安装在设备上(非常罕见).

    private TextToSpeech mTts;

    @Override
    protected void onActivityResult(
            int requestCode, int resultCode, Intent data) {
        if (requestCode == MY_DATA_CHECK_CODE) {
            if (resultCode == TextToSpeech.Engine.CHECK_VOICE_DATA_PASS) {
                // success, create the TTS instance
                mTts = new TextToSpeech(this, this);
            } else {
                // missing data, install it
                Intent installIntent = new Intent();
                installIntent.setAction(
                        TextToSpeech.Engine.ACTION_INSTALL_TTS_DATA);
                startActivity(installIntent);
            }
        }
    } 
Run Code Online (Sandbox Code Playgroud)

最后,当所有这一切完成后,我的应用程序调用了一个API,并且有几行如下:

    mTts.speak("<Useful output here>", TextToSpeech.QUEUE_FLUSH, null);   
Run Code Online (Sandbox Code Playgroud)

感谢您的帮助!

android text-to-speech google-text-to-speech

7
推荐指数
1
解决办法
3048
查看次数

gperftools如何在引擎盖下工作?

我正在寻找一个关于gperftools如何工作的简单解释.到目前为止,这是我所学到的:

  • 它运行一个世界各地的采样器.换句话说,它会定期停止正在分析的程序以收集信息.
  • Golang的pprof库使用下面的gperftools.

除了一般概述,以下是我想回答的一些具体问题:

  • gperftools是" 基于事件的分析器 "还是" 仪器分析器 ".据我所知,这些分析器修改程序运行的方式并通过这些修改收集样本
  • 在操作系统的"级别"中,gperftools的配置文件是什么?它是否像SystemTapperf一样描述核心?
  • gperftools可以安全地在高流量的生产服务器上运行吗?

我问这个问题来推断在Go服务器上使用pprof引入的开销.

google-perftools gperftools pprof

7
推荐指数
1
解决办法
773
查看次数

使用evaluate_generator可获得0%的准确率,但在使用相同数据进行培训时,准确率为75% - 具体情况如何?

我使用ImageDataGenerator,fit_generator和evaluate_generator遇到了一个非常奇怪的keras模型.

我正在创建这样的模型:

classes = <list of classes>
num_classes = len(classes)

pretrained_model = Sequential()
pretrained_model.add(ResNet50(include_top=False, weights='imagenet', pooling='avg'))
pretrained_model.add(Dense(num_classes, activation='softmax'))

pretrained_model.layers[0].trainable = False

pretrained_model.compile(
    optimizer='adam',
    loss='categorical_crossentropy',
    metrics=['accuracy']
)
Run Code Online (Sandbox Code Playgroud)

我正在训练它:

idg_final = ImageDataGenerator(
    data_format='channels_last',
    rescale=1./255,
    width_shift_range = 0.2,
    height_shift_range = 0.2,
    rotation_range=15,
)

traing_gen = idg_final.flow_from_directory('./train', classes=classes, target_size=(224, 224), class_mode='categorical')

pretrained_model.fit_generator(traing_gen, epochs=1, verbose=1)
Run Code Online (Sandbox Code Playgroud)

fit_generator打印loss: 1.0297 - acc: 0.7546.

然后,我试图在它训练完全相同的数据上评估模型.

debug_gen = idg_final.flow_from_directory('./train', target_size=(224, 224), class_mode='categorical', classes=classes, shuffle=True)
print(pretrained_model.evaluate_generator(debug_gen, steps=100))
Run Code Online (Sandbox Code Playgroud)

哪个打印[10.278913383483888, 0.0].

为什么在相同的精确数据上精度如此不同?

编辑:我还想指出有时精度高于0.0.例如,当我使用经过五个时期训练的模型时, …

python keras tensorflow

7
推荐指数
1
解决办法
1221
查看次数

Gson:JsonSyntaxException:预期为 BEGIN_OBJECT 但为 STRING

我正在尝试将 JSON 字符串转换为 HashMap。这是我的一些代码:

public static void createSimpleAppointment(String json){
try
    {
    Gson gson = new Gson();
    HashMap<String,String> data = new HashMap<String,String>();
    data = gson.fromJson(json, data.getClass());
Run Code Online (Sandbox Code Playgroud)

在这些行的最后一行(我设置数据的地方)抛出异常。

JSON 字符串是

{"body": "body", "startDate": "2014-05-30 11:00:00", "endDate": "2014-05-30 12:00:00", "location": "location" ,“主题”:“主题!”}

我得到的例外是

线程“main”中的异常 java.lang.reflect.InvocationTargetException at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorI) .java:43) 在 java.lang.reflect.Method.invoke(Method.java:606) 在 org.eclipse.jdt.internal.jarinjarloader.JarRsrcLoader.main(JarRsrcLoader.java:58) 引起:com.google。 gson.JsonSyntaxException:java.lang.IllegalStateException:预期为 BEGIN_OBJECT,但在 com.google.gson.Gson.fromJson(Gson.java:815) 的第 1 列第 3 列处为 STRING,位于 com.google.gson.Gson.fromJson(Gson. java:768) 在 com.google.gson.Gson.fromJson(Gson.java:717) 在 com.google.gson.Gson.fromJson(Gson.java:689) 在 ews.calendar。Calendar.createSimpleAppointment(Calendar.java:70) at ews.main.gateway.Main.main(Main.java:34) ... 5 导致:java.lang.IllegalStateException:预期为 BEGIN_OBJECT 但在第 1 …

java json hashmap gson

5
推荐指数
1
解决办法
9100
查看次数

WTForms SelectField没有正确地强制执行布尔值

这是我的代码:

class ChangeOfficialForm(Form):
    is_official = SelectField(
        'Officially Approved',
        choices=[(True, 'Yes'), (False, 'No')],
        validators=[DataRequired()],
        coerce=bool
    )
    submit = SubmitField('Update status')
Run Code Online (Sandbox Code Playgroud)

出于某种原因,is_official.data总是如此True.我怀疑我误解了胁迫是如何起作用的.

python flask wtforms flask-wtforms

5
推荐指数
1
解决办法
1521
查看次数

如何阻止Java将作为命令行参数传递的JSON字符串分离为args []的单独子单元

我想通过命令行参数将此JSON字符串传递给Java类.

{"body":"我们一定要见面,男人","startDate":"2014-05-29 11:00:00","endDate":"2014-05-29 12:00:00"," location":"Boca Raton","subject":"这是我们会议的主题."}

但是,在每个空间中,String都会被拆分.所以args [0]是

{"身体":

args [1]是

"我们

等等

我希望args [0]成为

{"body":"我们一定要见面,男人","startDate":"2014-05-29 11:00:00","endDate":"2014-05-29 12:00:00"," location":"Boca Raton","subject":"这是我们会议的主题."}

我尝试使用双引号,但由于JSON字符串中有引号,因此无效.

我怎样才能做到这一点?非常感谢!

java json spaces args command-line-arguments

3
推荐指数
1
解决办法
4822
查看次数

将音频文件拆分为多个文件,每个文件都低于大小阈值

我有一个FLAC文件,我需要将其拆分为几个不同的FLAC文件,每个文件的大小必须低于100 MB.有没有可以为我做这个的UNIX工具?我可以自己实现这个逻辑吗?

旁注:由于FLAC是压缩的,我认为最简单的解决方案需要先将文件转换为WAV.

unix audio ffmpeg flac

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

通过索引删除列表元素比通过值删除它更有效吗?

在python中,假设我们有以下列表: my_list = ['a', 'b', 'c', 'd', ...]

my_list.pop(3)比效率更高my_list.remove('d')吗?

python performance runtime python-internals

0
推荐指数
2
解决办法
2621
查看次数