问题列表 - 第181574页

Golang Marshal/Unmarshal JSON包含导出和未导出的字段

我已经看到很多方法来编组/解组只有未导出字段的结构.但是我怎么能用混合领域呢?

给定一个结构:

type Test struct {
    fieldA string `json:"fieldA"`
    FieldB int    `json:"fieldB"`
    FieldC string `json:"fieldC"`
}
Run Code Online (Sandbox Code Playgroud)

如何编写MarshalJSON/UnmarshalJSON函数,以便fieldA与FieldB和FieldC一起传输?

以下编译,但在运行时溢出调用堆栈.我的猜测是我递归编组对象,但我不确定在编码时如何保留导出和未导出的字段.

func (t *Test) MarshalJSON() ([]byte, error) {
    return json.Marshal(struct {
         *Test
         FieldA string `json:"fieldA"`
    }{
         t,
         t.fieldA,
    })
}

func (t *Test) UnmarshalJSON(b []byte) error {
    return json.Unmarshal(b, &t)
}
Run Code Online (Sandbox Code Playgroud)

有没有办法做到这一点?或者我应该重新考虑我的数据结构,也许只是导出该字段?

注意:我知道我可以手动执行每个字段,但是如果可能的话,我希望避免更新代码更易于管理.

json marshalling go unmarshalling

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

Blender - 移动网格,使最小Z点位于Z = 0平面上

我试图在搅拌机中移动网格,以便最低的z点是z = 0.这将使最低点位于Z = 0平面上.这比较困难,因为我首先通过其最大轴来缩放模型.这不仅仅是我正在使用的一个案例,所以我试图让这个工作适用于任何单个网格模型.

这是我目前的尝试:

mesh_obj = bpy.context.scene.objects[0]
# I first find the min and max of the mesh. The largest and smallest points on the Z-axis
max_floats = [mesh_obj.data.vertices[0].co[0], mesh_obj.data.vertices[0].co[1], mesh_obj.data.vertices[0].co[2]]
min_floats = [mesh_obj.data.vertices[0].co[0], mesh_obj.data.vertices[0].co[1], mesh_obj.data.vertices[0].co[2]]

for vertex in mesh_obj.data.vertices:
    if vertex.co[0] > max_floats[0]:
        max_floats[0] = vertex.co[0]
    if vertex.co[0] < min_floats[0]:
        min_floats[0] = vertex.co[0]

    if vertex.co[1] > max_floats[1]:
        max_floats[1] = vertex.co[1]
    if vertex.co[1] < min_floats[1]:
        min_floats[1] = vertex.co[1]

    if vertex.co[2] > max_floats[2]:
        max_floats[2] = vertex.co[2]
    if vertex.co[2] < …
Run Code Online (Sandbox Code Playgroud)

python translation mesh scale blender

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

FFMPEG - 无法加载字体“C”: - 无法转义分号

我正在使用带有 ffmpeg 64 位静态构建的 Windows 8.1 Pro,尝试运行以下 cmd

"C:\ffmpeg\bin\ffmpeg.exe" -i "C:\ffmpeg\v.mp4" -preset veryslow -crf 22 
-vf "drawtext=fontfile=C:/Windows/Fonts/Arial/ariblk.ttf: text='%
{localtime}': x=(w-tw)/2: y=h-(2*lh): fontcolor=white: box=1: boxcolor=0x00000000@1" 
"o.mp4"
Run Code Online (Sandbox Code Playgroud)

哪个返回错误

[Parsed_drawtext_0 @ 0000000004c5cf20] Could not load font "C": cannot open resource
Run Code Online (Sandbox Code Playgroud)

似乎问题出在由分号引起的这部分代码周围:终止字符串。

fontfile=C:/Windows/Fonts/Arial/ariblk.ttf:
Run Code Online (Sandbox Code Playgroud)

但是,我尝试在以下 ecerpts 中使用反斜杠对其进行转义,但错误仍然存​​在

fontfile=C\:/Windows/Fonts/Arial/ariblk.ttf:
Run Code Online (Sandbox Code Playgroud)

错误

[Parsed_drawtext_0 @ 0000000004c5cf20] Could not load font "C": cannot open resource
Run Code Online (Sandbox Code Playgroud)

fontfile=C/:/Windows/Fonts/Arial/ariblk.ttf
Run Code Online (Sandbox Code Playgroud)

错误

[Parsed_drawtext_0 @ 0000000004c5cf20] Could not load font "C/": cannot open resource
Run Code Online (Sandbox Code Playgroud)

最后

fontfile='C:'/Windows/Fonts/Arial/ariblk.ttf
Run Code Online (Sandbox Code Playgroud)

错误

[Parsed_drawtext_0 @ 0000000004c5cf20] Could not load font "C": …
Run Code Online (Sandbox Code Playgroud)

ffmpeg

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

String.split什么时候返回一个空数组?

我的日志显示此异常:ArrayIndexOutOfBoundsException: length=0; index=0由以下代码触发:

public static String getInitialsFromFullName(String fullName)
{
    String[] splitNames = fullName.split(" ");
    String firstName = splitNames[0]; <-- Here
    ...
}
Run Code Online (Sandbox Code Playgroud)

我试图弄清楚String.split返回一个空数组的条件.我的理解是,如果找不到匹配项,则返回大小为1且包含原始字符串的数组.

这是针对Android构建SDK版本21编译的Java.我期待听到我遗漏的明显细节.

java android

12
推荐指数
1
解决办法
6616
查看次数

如何为布尔矩阵构建类似填字游戏的图

我有一个布尔矩阵:

mm <- structure(c(TRUE, TRUE, TRUE, FALSE, TRUE, FALSE, TRUE, FALSE, 
                  FALSE, FALSE, TRUE, TRUE, TRUE, TRUE, TRUE, FALSE, FALSE, TRUE, 
                  FALSE, FALSE, FALSE, TRUE, TRUE, TRUE, TRUE, FALSE, FALSE, FALSE, 
                  FALSE, FALSE, TRUE, TRUE, TRUE, TRUE, TRUE, FALSE, FALSE, FALSE, 
                  FALSE, FALSE, TRUE, TRUE, TRUE, TRUE, TRUE, FALSE, FALSE, FALSE, 
                  FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, TRUE, TRUE, 
                  TRUE, TRUE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, TRUE, TRUE, 
                  TRUE, TRUE, FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, TRUE, TRUE, …
Run Code Online (Sandbox Code Playgroud)

r

8
推荐指数
3
解决办法
3867
查看次数

从`org.apache.spark.sql.Row`中提取信息

我已经Array[org.apache.spark.sql.Row]回来了sqc.sql(sqlcmd).collect():

Array([10479,6,10], [8975,149,640], ...)
Run Code Online (Sandbox Code Playgroud)

我可以得到个人价值观:

scala> pixels(0)(0)
res34: Any = 10479
Run Code Online (Sandbox Code Playgroud)

但他们Any不是Int.

我如何将它们提取出来Int

最明显的解决方案不起作用:

scala> pixels(0).getInt(0)
java.lang.ClassCastException: java.lang.String cannot be cast to java.lang.Int
Run Code Online (Sandbox Code Playgroud)

PS.我可以做pixels(0)(0).toString.toIntpixels(0).getString(0).toInt,但他们感觉不对劲......

scala apache-spark apache-spark-sql

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

如何使用pandas从数据框中删除列?

我读了我的数据

import pandas as pd
df = pd.read_csv('/path/file.tsv', header=0, delimiter='\t')
print df
Run Code Online (Sandbox Code Playgroud)

得到:

          id    text
0    361.273    text1...
1    374.350    text2...
2    374.350    text3...
Run Code Online (Sandbox Code Playgroud)

如何id从上面的数据框中删除列?我尝试了以下方法:

import pandas as pd
df = pd.read_csv('/path/file.tsv', header=0, delimiter='\t')
print df.drop('id', 1)
Run Code Online (Sandbox Code Playgroud)

但它引发了这个例外:

ValueError: labels ['id'] not contained in axis
Run Code Online (Sandbox Code Playgroud)

python csv io python-2.7 pandas

42
推荐指数
3
解决办法
7万
查看次数

在java中,如果抛出异常,是否继续在try块内执行?

try {
    doSomething()
    doSomethingElse()
}
catch(Exception e) {}
Run Code Online (Sandbox Code Playgroud)

如果doSomething()抛出异常,会doSomethingElse()被执行吗?如果没有,有没有办法让它被执行(但如果doSomethingElse抛出相同的异常,仍然捕获它)?

java exception-handling

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

删除包含特定字符串的所有行

我有一个大文件,我想删除所有包含该单词的行 date

例如:

{
  date: 10291992
  stuff: stuff
  ...
},
{
  date: 02171995
  stuff: stuff
  ...
},

...
Run Code Online (Sandbox Code Playgroud)

所以我想删除包含该单词的所有行,date但由于每个日期都有不同的日期,我不能只是ctrl f并替换它.我正在读那个放在^.*前面但它对我不起作用.

我目前正在使用Sublime Text 3.

谢谢.

sublimetext sublimetext3

4
推荐指数
2
解决办法
7824
查看次数

Donut使用mvcdonutcaching ASP.NET MVC缓存_Layout

在我的ASP.NET MVC项目中,我在共享_Layout.cshtml文件的导航菜单中有一个登录子菜单,如果用户已登录则显示用户信息,如果没有,则显示注册/登录选项.登录子菜单是我的共享文件夹中的部分视图,名为_LoginPartial:

@using Microsoft.AspNet.Identity
@if (Request.IsAuthenticated)
{
    //display <ul> with user profile settings, omitted for brevity
}
else
{
    //display <ul> to signup/login, omitted for brevity    
}
Run Code Online (Sandbox Code Playgroud)

虽然我大量缓存各种控制器的几个动作,但我想实现甜甜圈缓存,_Layout以便_LoginPartial不会被缓存,原因显而易见.我正在使用mvcdonutcaching库来完成这个(在这个答案中建议),它提供了一些@Html.Action具有附加bool excludeFromParentCache属性的重载.

因此,我创建了LayoutController一个UserAuth返回的动作_LoginPartial:

public class LayoutController : Controller
{
    [ChildActionOnly]
    public ActionResult UserAuth()
    {
        return PartialView("_LoginPartial");
    }
} 
Run Code Online (Sandbox Code Playgroud)

..在我_Layout想要_LoginPartial出现的文件中,我将mvcdonutcaching Html.Action重载称为:

@Html.Action("UserAuth", "Layout", true)
Run Code Online (Sandbox Code Playgroud)

为了测试这个,我OutputCache在 …

c# asp.net-mvc caching donut-caching asp.net-mvc-5

23
推荐指数
1
解决办法
2320
查看次数