小编Ala*_*anH的帖子

Python:两个变量何时指向内存中的同一个对象?

这是一个例子:

l = [1, 5, 9, 3]
h = l

h[0], h[2] = h[2], h[0]

print(h) # [9, 5, 1, 3]
print(l) # [9, 5, 1, 3]

h = h*2
print(h) # [9, 5, 1, 3, 9, 5, 1, 3]
print(l) # [9, 5, 1, 3]
Run Code Online (Sandbox Code Playgroud)

我的理解是,调用设置h = l只会指向h内存中l指向的同一项.那么为什么在最后3行中,hl没有给出相同的结果呢?

python pointers

7
推荐指数
2
解决办法
3045
查看次数

VS Code:如何更改所选文本的文本颜色?

我正在尝试更改 VS Code 中突出显示文本的选定文本。我可以通过 3 种方式选择文本。

我当前的编辑器设置是:

    "workbench.colorCustomizations": {
        "editor.selectionHighlightBackground": "#e8fc37",
        "editor.wordHighlightBackground": "#e8fc37",
    },
Run Code Online (Sandbox Code Playgroud)

(1) 当我第一次单击或选择一个文本字符串,然后点击 时CMD+d,我可以选择下一个出现的文本字符串:

在此输入图像描述

(2) 但是,如果我尝试通过首先在同一文件中搜索文本(CMD+f),然后选择下一个匹配项(按 CMD+d)来选择文本,则颜色不会突出显示。文字确实突出显示,但很难清楚。您只能通过查看排水沟才能真正知道行号在哪里。

在此输入图像描述

(3) 当我使用搜索命令(在所有文件中搜索;CMD+Shift+f)时,我点击其中一个搜索结果,即使它清楚地告诉我文本是哪一行,我也不能轻易地告诉文本在行中的哪个位置被突出显示。当行较长或填充特殊字符时,这很棘手。

在此输入图像描述

在所有这些情况下,我希望拥有选定的文本,无论是通过使用CMD+d还是单击搜索侧栏中的结果来选择它,以使文本在前景中为深灰色,在背景中为黄色。我已经能够实现背景颜色更改,但不知道任何前景文本的编辑器键。

如何使选定的文本在背景中变为黄色(我已经完成)并带有深灰色文本?

visual-studio-code

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

使用在代码库其他部分的 main 中初始化的记录器

我正在努力了解如何使用zap。在文档中,他们提供了一些有关如何配置记录器以及如何使用预设的示例。但是,我不明白应该如何使用在 中初始化的记录器main.go,该记录器位于cmd/server/server.go. 根据这篇 SO post和其他几篇文章,无法从main包外部的包中导入。那么,根据 Zap 示例,我应该如何使用pkg/endpoint/my_requestspkg与 处于同一级别cmd)中的记录器?我还没有找到任何明确的例子(甚至与 zap 无关)来说明如何完成这样的事情;然而,我确信这是一个非常简单的问题。

logging go

7
推荐指数
2
解决办法
3533
查看次数

JFrog Artifactory:构建、打包和工件之间的区别

我正在寻找一个明确的定义,但还没有找到。我找到了一个帖子,例如这个,但许多其他帖子不完整或未得到答复。我只是想知道构建、包和工件之间的区别。我不知道这些在不同平台上是否意味着不同的东西,但是 FWIW,我正在使用 JFrog。

continuous-integration artifactory

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

如何在Python中的两个列表的交集中选择元素

作为一个简单的例子:

list1 = ['a', 'b', 'c']
list2 = ['a', 'stack', 'overflow']
for i in list1 and list2:
    print i
Run Code Online (Sandbox Code Playgroud)

这将打印出所有元素list2.为什么是这样?我怎样才能打印两个列表中的元素?

python list

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

如何在未知数量的参数上计算函数

说我有一个叫做的函数 multiplyDivide

如果我打电话multiplyDivide(2)(3)(4)(6),那就相当于2 * 3 / 4 * 6.

更新: 如果我事先不知道将要采用多少参数,是否可以编写这样的函数?例如,我可以multiplyDivide(1)(2)multiplyDivide(1)(2)(3)(4)...(n-1)(n)

javascript currying

6
推荐指数
2
解决办法
1926
查看次数

React:没有州的班级是否仍被视为无国籍/纯粹?

我一直在重构我的应用程序,以制作更多组件无状态/纯组件; 也就是说,它们只是功能.但是,我注意到有些组件需要通过redux store连接mapStateToProps.这导致我做这样的事情:

const someComp = (props) => {
  const {
    funcFromReduxStore,
  } = props;

  return (
    ...
    <SomeComponent
      func={ funcFromReduxStore(myArgs) }
    ...
  );
};
Run Code Online (Sandbox Code Playgroud)

这不起作用,因为我正在执行funcFromReduxStore.一个简单的解决方案是将支柱包裹在箭头功能中.但是,这会导致许多不必要的重新渲染b/c该函数将不受约束.

那么问题就变成了:如何在无状态组件中绑定函数?

如果我使它成为一个没有构造函数的类,并且如下所示创建一个类实例字段,它仍然是无状态的:

class someComp extends React.Component {
  const {
    funcFromReduxStore,
  } = this.props,

  wrapper = (x) => funcFromReduxStore(x) // equivalent way to bind w/ ES8+

  render() {
    ...
    <SomeCompnent
      func={ wrapper(myArgs) }/>
    ...
  }
}
Run Code Online (Sandbox Code Playgroud)

我没有构造函数,也没有状态.我想保持comopnent无状态,但我也想绑定该函数以避免不必要的重新渲染.我还想继续保持无国籍b/c React已经声明将为无国籍的共同体提供性能优势.这是否有资格作为解决方法?

class reactjs react-redux

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

Pycharm:如何调整变量/语法高亮的颜色?

我不完全确定它是否被称为语法高亮,但是当我将光标放在编辑器中的某些单词上时,它会突出显示它的其他出现.问题是,我正在使用的主题(温暖的霓虹灯),突出显示在我的屏幕上非常炫目.要清楚,我不是在谈论用光标选择文本,我的意思是当我将光标放在某些单词的中间时,它会改变该单词的背景和字体颜色,并在其他情况下这样做.

如何调整颜色?我似乎无法在偏好中找到它.

python ide syntax-highlighting editor pycharm

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

Javascript 事件循环:在哪里执行 web api?

在阅读 JS 事件循环时,我很好奇 web api 的执行位置。例如,在这张图片中,粉红色的盒子没有名字(只是说“具体实现”),让我想知道这些 web api在哪里执行。调用栈、事件循环、消息队列都有名字。我还看到 Philip Roberts谈到事件循环,他只是将其称为“Web API”。

因此,当调用堆栈中到达 Web api 时,它会关闭并在其余调用堆栈运行时执行。但是那个 web api 调用去哪里执行呢?例如,如果有一个 5 秒的固定时间,那么这 5 秒在哪里?

javascript event-loop

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

React - 如何在render函数中返回几个组件之一?

在我的国家我有showTab1,showTab2,showTab3.如果选择了选项卡i,则其他选项卡将设置为false.所以在我的render函数中我希望能够返回这样的东西:

  return (
    <div>
      {
        (() => {
          if (someCondition) {
            if (this.state.showTab1) {
              return (
                <div>
                  <Tab1/>
                </div>
              )
            } else if (this.state.showTab2) {
              return (
                <div>
                  <Tab2/>
                </div>
              )
            } else if (this.state.showTab3) {
              return (
                <div>
                  <Tab3/>
                </div>
              )
            }
          }

          return <span />;
        })()
      }

      <AnotherComponent>
    </div>
  );
Run Code Online (Sandbox Code Playgroud)

但我知道不允许多次退货,或者至少它被认为是不好的做法.我怎么能绕过这个?

javascript reactjs

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