小编nka*_*zig的帖子

如何处理丑陋的代码格式化程序输出?(黑色)

我目前正在尝试使用适用于Python的Black代码格式化程序。在超过90%的情况下,我对输出(使用默认配置)感到满意,但是它经常发生,它以对我来说似乎很丑陋的方式格式化某些行。

这是一个使用黑色格式化前后的示例。

之前: 格式化之前

后: 格式化后

这两行的语法本来是相同的(相同的函数,相同数量的参数...),所以以相同的方式格式化它们是有意义的。但是,由于第一行稍长,Black对其格式有所不同,这使得阅读和解释代码变得更加困难。

当然,在这种特定情况下,您可以增加linelengthBlack 的参数,但这通常并不能真正解决问题,我想坚持使用默认配置。

我遇到过许多这样的情况,也使用其他格式化程序,例如JavaScript的Prettier。您如何处理这些情况?例如,是否有一种方法可以告诉Black忽略这些特定行而不格式化它们?

python code-formatting visual-studio-code python-black

6
推荐指数
0
解决办法
1722
查看次数

大HDF5数据集,如何在每个时期后有效地洗牌

我目前正在使用大型图片数据集(约60GB)来训练CNN(Keras / Tensorflow)以完成简单的分类任务。图像是视频帧,因此在时间上高度相关,因此在生成巨大的.hdf5文件时,我已经对数据进行了一次重洗。一个简单的批处理生成器(请参见下面的代码)。现在我的问题是:通常建议在每个训练时期之后对数据进行混洗,对吗?(出于SGD收敛的原因?)但是要做到这一点,我必须在每个时期之后加载整个数据集并对其进行混洗,这正是我要避免使用批处理生成器的原因……所以:在每个时期之后重新整理数据集真的重要吗?如果是,我如何才能尽可能高效地做到这一点?这是我的批处理生成器的当前代码:

def generate_batches_from_hdf5_file(hdf5_file, batch_size, dimensions, num_classes):
"""
Generator that returns batches of images ('xs') and labels ('ys') from a h5 file.
"""
filesize = len(hdf5_file['labels'])

while 1:
    # count how many entries we have read
    n_entries = 0
    # as long as we haven't read all entries from the file: keep reading
    while n_entries < (filesize - batch_size):
        # start the next batch at index 0
        # create numpy arrays of input data (features)
        xs = hdf5_file['images'][n_entries: n_entries …
Run Code Online (Sandbox Code Playgroud)

python hdf5 deep-learning keras tensorflow

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