小编chb*_*chb的帖子

返回Scala for/yield的类型

我正在阅读斯卡拉的不耐烦,我遇到的东西让我摸不着头脑.

以下返回String:

scala> for ( c<-"Hello"; i <- 0 to 1) yield (c+i).toChar
res68: String = HIeflmlmop
Run Code Online (Sandbox Code Playgroud)

但是这会返回一个Vector:

scala> for (i <- 0 to 1; c <- "Hello") yield (c + i).toChar
res72: scala.collection.immutable.IndexedSeq[Char] = Vector(H, e, l, l, o, I, f, m, m, p)
Run Code Online (Sandbox Code Playgroud)

这两个例子前面的文字是......

"当for循环的主体以yield开始时,循环构造一个值集合,每次迭代一个......这种类型的循环称为for comprehension.生成的集合与第一个生成器兼容.

如果生成的集合与第一个生成器兼容,那么为什么第二个示例不返回Range类型,如下所示:

scala> val range = 0 to 1
range: scala.collection.immutable.Range.Inclusive = Range(0, 1)
Run Code Online (Sandbox Code Playgroud)

或者我完全误解了文本的意思,"......生成的集合与第一个生成器兼容."

scala for-comprehension scala-collections

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

Git拉取覆盖并且不合并或确认同一分支(主节点)上的冲突

背景:

我有一个简单的场景。我已经在本地提交了更改,现在我想将远程(在我前面的一个分支)中的内容合并到本地工作目录中。

git branch -vv --list --all 给出以下内容:

  master                79d9d4e [origin/master: behind 7] Footprint UI working
  remotes/origin/HEAD   -> origin/master
  remotes/origin/master a86a1a9 Added sample data to webpage
Run Code Online (Sandbox Code Playgroud)

我特别想合并一个文件。这是差异: git diff --stat a86a1a9 79d9d4e views/footprint.handlebars

views/footprint.handlebars | 65 +++++++++++++++++++++++++++++++++--------------------------------
 1 file changed, 33 insertions(+), 32 deletions(-)
Run Code Online (Sandbox Code Playgroud)

但是,当我运行时git pull,本地提交中的文件版本将被远程版本覆盖。更详细地说:

$ git fetch -v origin  

From github.com:githubusername/foo
 = [up to date]      master     -> origin/master
Run Code Online (Sandbox Code Playgroud)
$ git merge origin  
Updating 79d9d4e..a86a1a9
Fast-forward
...
 views/footprint.handlebars    | 65 ++++++++++++++++++++++++++++++++---------------------------------
...
 6 files changed, 220 insertions(+), …
Run Code Online (Sandbox Code Playgroud)

git version-control merge git-merge git-merge-conflict

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

如何从 Git 中删除获取的远程分支?

我已经获取了一些远程分支,例如git fetch jason sprint-36。我附上了屏幕截图(红色是遥控器):

在此输入图像描述

我如何停止跟踪/从我的列表中删除遥控器?例如,4 个月前我这样做了,git fetch ken retain-cycle-fix我再也不会获取或查看这个分支,我该如何删除它?

git github

5
推荐指数
2
解决办法
4686
查看次数

使用 Terraform 在 Cloud SQL 中创建不是 cloudsqlsuperuser 的用户

我想限制向我通过 Google Terraform 提供商创建的任何给定用户提供的权限。默认情况下,创建的任何用户都会放置在该cloudsqlsuperuser组中,并且创建的任何新数据库都将该角色/组作为所有者。这使通过 GCP 控制台或google_sql_userTerraform 资源创建的任何用户可以完全控制以类似方式创建的任何数据库。

到目前为止,我们能想到的最好办法是通过单次运行的 k8s 作业创建和更改用户。这充其量看起来很迂回,特别是考虑到如果我们想通过 Terraform 管理该资源,则必须稍后手动导入该资源。

是否有更好的方法来创建权限仅限于单个特定于应用程序的数据库的用户?

google-cloud-sql terraform-provider-gcp

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

396:错误:( - 5)此LBPH模型尚未计算.你打电话给火车方法了吗?在函数cv :: face :: LBPH :: predict中

我正在尝试使用Python 2.7.13和OpenCV 3.3.0构建一个人脸识别程序.

但是,当我试图检测到我的脸时,我收到此错误:

File "C:\GitProject\face_recognition\detector.py", line 20, in
 <module> Id = recognizer.predict(gray[y:y+h,x:x+w])
error: C:\projects\opencv-python\opencv_contrib\modules\face\src\lbph_faces.cpp:396: 
error: (-5) This LBPH model is not computed yet. Did you call the train method? in function cv::face::LBPH::predict
Run Code Online (Sandbox Code Playgroud)

这是我的代码:

import cv2 ,os
import numpy as np
from PIL import Image
import pickle

recognizer = cv2.face.LBPHFaceRecognizer_create()
recognizer.read('trainer/training_data.yml')
cascadePath = "haarcascade_frontalface_default.xml"
faceCascade = cv2.CascadeClassifier(cascadePath);


cam = cv2.VideoCapture(0)
font = cv2.FONT_HERSHEY_SIMPLEX
while True:
    ret, im =cam.read()
    gray=cv2.cvtColor(im,cv2.COLOR_BGR2GRAY)
    faces=faceCascade.detectMultiScale(gray, 1.2,5)
    for(x,y,w,h) in faces:
        cv2.rectangle(im,(x,y),(x+w,y+h),(225,0,0),2)
        Id = recognizer.predict(gray[y:y+h,x:x+w])
        if(conf<50):
            if(Id==1): …
Run Code Online (Sandbox Code Playgroud)

python face-recognition opencv3.0

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

为什么我在 JavaFX 上看到“Not on FX application thread”?

我正在学习 JavaFX 并且我制作了一个演示应用程序,该应用程序具有 Label 检测值更改并更改其显示。我试图将 Label.textProperty 绑定到该值,但仍然不起作用。这是我的代码:

public class MainApp extends Application {

public static void main(String[] args) {
    launch(args);
}

private Temp aTemp = new Temp();

@Override
public void start(Stage primaryStage) {

    try {
        FXMLLoader loader = new FXMLLoader(getClass().getResource("Sample.fxml"));      
        BorderPane root = (BorderPane)loader.load();
        SampleController sampleController = loader.getController();

        Scene scene = new Scene(root,600,600);
        scene.getStylesheets().add(getClass().getResource("application.css").toExternalForm());

        primaryStage.setScene(scene);
        primaryStage.show();

        sampleController.setModel(aTemp);

    } catch(Exception e) {
        e.printStackTrace();
    }
}}
Run Code Online (Sandbox Code Playgroud)

这是模型

public class Temp {
private StringProperty temp = new SimpleStringProperty("a");

private final ExecutorService service = …
Run Code Online (Sandbox Code Playgroud)

java multithreading javafx

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

我在哪里可以找到 flutter web 中的“print()”结果?

我正在创建一个网站并使用 Visual Studio Code 尝试 flutter web。我找不到该print()方法的调用结果。

当我们在 Android Studio 中使用 flutter 进行编码时,它会显示在 Logcat 中,而在 Visual Studio Code 中,它会显示在终端窗口中。但是对于 Visual Studio 代码中的 flutter web,我在哪里可以找到它?

我已经检查了终端、调试控制台和所有输出窗口。另外,在我的浏览器中,我查看了“检查元素”、“控制台”和“调试器”窗口。

flutter flutter-web

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