小编Mar*_*ark的帖子

Python版本的含义是什么?

启动Python解释器实例时显示的行是什么意思?

Python 2.7 (r27:82525, Jul  4 2010, 07:43:08) [MSC v.1500 64 bit (AMD64)] on win32
Run Code Online (Sandbox Code Playgroud)

所以我知道我有Python 2.7,但其余的呢?

特别令我困惑的是64 bit (AMD64) on win32r27:82525部分.

python 32bit-64bit

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

端口使用Vagrant转发时连接重置

我有Vagrant/VirtualBox运行Ubuntu 12.04 LTS OS.我已将Vagrant配置为将来宾端口8000转发到我的主机端口8888.

[default] Preparing network interfaces based on configuration...
[default] Forwarding ports...
[default] -- 22 => 2222 (adapter 1)
[default] -- 8000 => 8888 (adapter 1)
[default] Booting VM...
[default] Waiting for VM to boot. This can take a few minutes.
[default] VM booted and ready for use! 
Run Code Online (Sandbox Code Playgroud)

当虚拟机启动时,我在端口8000上启动Django dev服务器.

Development server is running at http://127.0.0.1:8000/
Quit the server with CONTROL-C.
Run Code Online (Sandbox Code Playgroud)

好的,我可以把它放在后台,我甚curl localhost:8000至可以从服务器获得一些输出

<div id="explanation">
  <p>
    You're seeing this message because you have <code>DEBUG = True</code> …
Run Code Online (Sandbox Code Playgroud)

django portforwarding connection-reset vagrant ubuntu-12.04

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

如何实现闭包?

"学习Python,第四版." 提到:

稍后调用嵌套函数时会查找封闭的范围变量.

但是,我认为当一个函数退出时,它的所有本地引用都会消失.

def makeActions():
    acts = []
    for i in range(5): # Tries to remember each i
        acts.append(lambda x: i ** x) # All remember same last i!
return acts
Run Code Online (Sandbox Code Playgroud)

makeActions()[n]每个人都是一样的,n因为变量i在调用时以某种方式查找.Python如何查找此变量?难道它根本不存在因为makeActions已经退出了吗?为什么Python不执行代码直观建议,并通过在循环运行时用for循环中的当前值替换i来定义每个函数?

从评论到THC4k:
我认为我错误地认为Python在内存中构建函数的方式.我在想,当遇到a makeActions()[n]或者a时n,Python会生成与该函数相关的所有必要的机器指令,并将其保存在内存中的某处.现在我认为它更像是将函数保存为文本字符串(并将其与闭包所需的引用捆绑在一起),并在每次调用函数时重新解析它.

python closures

21
推荐指数
2
解决办法
2205
查看次数

sbt如何选择使用哪个Scala版本?

我的sbt构建中有多个项目.我正在尝试从2.9.1升级到Scala 2.10,所以在我的build.sbt文件中我放了

scalaVersion := "2.10.0"
Run Code Online (Sandbox Code Playgroud)

这似乎有效,因为在我的顶级项目中,我得到:

> scala-version
[info] 2.10.0  
Run Code Online (Sandbox Code Playgroud)

但是,当我切换到其他项目之一时:

> project web-client
[info] Set current project to web-client (in build file:/C:/Users/...
[web-client] $ scala-version
[info] 2.9.1  
Run Code Online (Sandbox Code Playgroud)

您看到版本现已更改回2.9.1!如何强制在我的所有项目中使用相同的Scala版本?

scala sbt

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

Windows Powershell $配置文件不显示真实路径

我启动Windows Powershell(通过按下Windows键,键入"powershell"并按下启动的输入C:\Windows\System32\WindowsPowerShell\v1.0)并键入$profile并按Enter键并查看WindowsPowerShell\Microsoft.PowerShell_profile.ps1

据我所知,这不是一条有效的道路.我希望有类似的东西C:\Windows\...

$profile | Format-List * -Force然而,当我输入时,有一些进展,我得到了

AllUsersAllHosts       : C:\Windows\System32\WindowsPowerShell\v1.0\profile.ps1
AllUsersCurrentHost    : C:\Windows\System32\WindowsPowerShell\v1.0\Microsoft.PowerShell_profile.ps1
CurrentUserAllHosts    : WindowsPowerShell\profile.ps1
CurrentUserCurrentHost : WindowsPowerShell\Microsoft.PowerShell_profile.ps1
Length                 : 50
Run Code Online (Sandbox Code Playgroud)

然而CurrentUserAllHosts,CurrentUserCurrentHosts仍然是非路径.这些非路径是什么意思?它们是指某些隐藏的值还是我需要在某处设置一些系统值?

这是我的 $PsVersionTable.PsVersion

Major  Minor  Build  Revision
-----  -----  -----  --------
5      1      14393  206
Run Code Online (Sandbox Code Playgroud)

这是结果 Get-Host

Name             : ConsoleHost
Version          : 5.1.14393.206
InstanceId       : a2a61a42-f2ee-46b9-b67a-ef441301bdb8
UI               : System.Management.Automation.Internal.Host.InternalHostUserInterface
CurrentCulture   : en-US
CurrentUICulture : en-US
PrivateData      : Microsoft.PowerShell.ConsoleHost+ConsoleColorProxy
DebuggerEnabled  : True
IsRunspacePushed : False
Runspace         : …
Run Code Online (Sandbox Code Playgroud)

powershell windows-10

18
推荐指数
2
解决办法
1845
查看次数

Windows上安装了pandoc在哪里?

我有一台Windows 8机器,我刚刚运行了pandoc-1.13-windows.msi安装程序.安装程序没有让我选择安装路径,但它完成没有错误.我无法从命令行运行pandoc所以我猜我必须更新路径.但我不知道pandoc安装在哪里.pandoc安装在哪里?

pandoc

13
推荐指数
2
解决办法
4715
查看次数

在什么情况下我的浏览器会尝试为多个请求重用TCP连接?

我正在使用Firefox,但我想知道浏览器一般如何决定这一点.

似乎当我在很短的时间内两次访问同一个URL时,我的浏览器会尝试为两个请求重新使用TCP相同的连接(这称为keep-alive).但是,当我访问两个不同的URL(但仍由同一服务器提供服务)时,浏览器有时会决定为每个请求打开一个新连接.显然,浏览器不使用每个URL的一个连接策略.

我问这个是因为我正在尝试实现一个使用长轮询的Web服务.我可以想象用户可能希望在同一浏览器的多个选项卡中打开此服务.但是,使用keep-alive,第二个长轮询请求在第一个完成之前不会被发送(至少在Firefox中),因为浏览器正试图将它们都推到同一个套接字中,这是我没想到的设计了这项服务.即使浏览器实现了管道衬里,在我响应第一个请求之前也无法响应第二个请求,因为HTTP要求我按顺序完成响应.

browser tcp http keep-alive long-polling

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

__scrt_common_main_seh 是什么/在哪里?

我的程序中的第三方库试图__scrt_common_main_seh通过 Microsoft 库进行调用msvcrt.lib,但它是由某些未知库定义的,因此会出现链接器错误。我不知道这个函数应该做什么或者它是在哪里定义的。

我在网上查找了这个函数,但除了链接器错误的一般描述之外没有找到任何线索。

我相信它可能正在为 win32 GUI 应用程序做一些设置。定义它的库可能被 Visual Studio 配置为项目依赖项,但我的项目正在使用 Bazel。

c++ windows winapi

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

可以在单个CUDA内核中启动的最大线程数

我对可以在Fermi GPU中启动的最大线程数感到困惑.

我的GTX 570设备查询说明如下.

  Maximum number of threads per block:           1024
  Maximum sizes of each dimension of a block:    1024 x 1024 x 64
  Maximum sizes of each dimension of a grid:     65535 x 65535 x 65535
Run Code Online (Sandbox Code Playgroud)

根据我的理解,我将以上陈述理解为:

对于CUDA内核,我们最多可以启动65536个块.每个启动的块最多可包含1024个线程.因此原则上,我可以启动多达65536*1024(= 67108864)个线程.

它是否正确?如果我的线程使用了很多寄存器怎么办?我们仍然能够达到理论上最大的线程数吗?

在编写并启动CUDA内核之后,我怎么知道我发起的线程和块的数量确实已经实例化了.我的意思是我不希望GPU计算一些垃圾,或者表现得非常奇怪,如果我偶然实例化了比特定内核更多的线程.

cuda gpu thrust

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

bazel如何选择python版本?

我正在运行一个 python 二进制目标,并且bazel run xxx在我正在执行的目标中print(sys.version)。这输出Python version 3.6.8 (default, Jan 14 2019, 11:02:34)

当我python直接输入命令时,我得到Python 3.7.3 (default, Apr 3 2019, 19:16:38)

bazel 为什么/如何选择不同的 python 版本?

bazel

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