我目前有python3.4后,我正试图在我的机器上安装python3.6.但是,安装后试图pip在python3.6下运行给我错误:
Traceback (most recent call last):
File "pip3", line 7, in <module>
from pip import main
File "/usr/lib/python3/dist-packages/pip/__init__.py", line 59, in <module>
from pip.log import logger
File "/usr/lib/python3/dist-packages/pip/log.py", line 9, in <module>
import colorama, pkg_resources
File "/usr/lib/python3/dist-packages/pkg_resources.py", line 1520, in <module>
register_loader_type(importlib_bootstrap.SourceFileLoader, DefaultProvider)
AttributeError: module 'importlib._bootstrap' has no attribute 'SourceFileLoader'
Error in sys.excepthook:
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/apport_python_hook.py", line 63, in apport_excepthook
from apport.fileutils import likely_packaged, get_recent_crashes
File "/usr/lib/python3/dist-packages/apport/__init__.py", line 5, in <module>
from apport.report import …Run Code Online (Sandbox Code Playgroud) 我有一个带有两个通用参数的接口,但其中一个参数应该由类实现提供.
public interface IA<T, U> { ... }
public class X<T> : IA<T, int> { ... }
public class Y<T> : IA<T, MyClass> { ... }
Run Code Online (Sandbox Code Playgroud)
但是,另一个接口有一个方法,它接受一个实例IA作为参数 - 但是,每个实例必须是相同的(同一个类可以采用多个X,但是它永远不会采用a Y,反之亦然).我试图把它作为一个通用的约束,但后来我有类似的东西
public interface IB<T, U, V> where U : IA<T, V> {
void MyMethod(U value);
}
public class Z<T> : IB<T, X<T>, int> { ... }
Run Code Online (Sandbox Code Playgroud)
当然,我不想写那个参数V,因为我不能为它选择一个值.该参数U已经决定了V的值应该是什么!但是,我不能简单地删除V,因为那时我无法编写约束.
另一种解决方案是不使用约束:
public interface IB<T> {
void MyMethod(IA<T> value);
}
Run Code Online (Sandbox Code Playgroud)
不过这样一来,我不能保证实施的IB将获得一个唯一的执行IA …
我正在寻找这对功能
previous :: (Enum a, Bounded a) => a -> a
next :: (Enum a, Bounded a) => a -> a
Run Code Online (Sandbox Code Playgroud)
这previous就是pred :: Enum a => a -> a如果结果值将受边界约束,并将其循环到另一边(对称于next和succ).
例
data X = A | B | C deriving (Bounded, Enum)
next A = B
next B = C
next C = A
Run Code Online (Sandbox Code Playgroud)
如果我要添加Eq a => a约束,这将很容易,正如这些类似 问题中所讨论的那样.但是这种约束似乎是不必要的,因为Bounded a => a对我来说类型听起来应该能够判断它是否在界限内.该succ和pred功能本身具有某种在这个控制的,但在我,否则纯代码我宁可不使用异常:
Prelude> …Run Code Online (Sandbox Code Playgroud) 我正在尝试打开外部可执行文件.我可以使用以下Process类来轻松打开外部可执行文件System.Diagnostics:
Process p = new Process()
p.StartInfo.FileName = processName;
p.Start();
Run Code Online (Sandbox Code Playgroud)
这适用于大多数程序,如浏览器和记事本,创建进程并显示其图形界面.但是,当我尝试打开我想要的程序时,该过程已启动(可以在任务管理器中看到它,甚至需要整个CPU核心进行处理),但GUI窗口不会显示.一个进程可能会发生什么,Process.Start从而不显示其GUI?
作为参考,我想要执行的程序是ADOM版本60,当我直接在Explorer shell或Powershell中打开它时,它运行100%.这在控制台和WindowsForms应用程序中都是可重现的.
以下是一些没有帮助的其他设置:
p.StartInfo.CreateNoWindow = true; // or false
p.StartInfo.ErrorDialog = false;
p.StartInfo.WindowStyle = /* any of possible values */;
p.StartInfo.UseShellExecute = true; // or false
Run Code Online (Sandbox Code Playgroud) 我写了一个非常简单的批处理文件,将输出定向到文件.这是文本正文:
DATE /T > FileTreeList.txt
TIME /T >> FileTreeList.txt
cd >> FileTreeList.txt
tree /f /a >> FileTreeList.txt
Run Code Online (Sandbox Code Playgroud)
当我在具有大量文件夹和文件的目录中运行批处理文件时,输出文件(FileTreeList.txt)截断为~621KB.如果我从命令模式运行批处理文件并将输出直接输出到文件,我得到相同的结果.但是,如果我让结果显示在屏幕上,它会显示所有结果.
为什么会发生以及如何解决?
我一直在使用Angular,我试图实现简单的路由.我有一个基本的HTML,其中包含对所有必需脚本和ng-view标记的引用.
出于某种原因,当加载页面时,模板不会显示在该ng-view位置.为什么不显示,以及如何修复它?
<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.4.4/angular.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.4.4/angular-route.js"></script>
<script src="routCtrl.js"></script>
</head>
<body ng-app='ngRouteTest'>
<div ng-view></div>
</body>
Run Code Online (Sandbox Code Playgroud)
和脚本文件:
var ngRouteTest = angular.module('ngRouteTest',['ngRoute']);
ngRouteTest.config(function($routeProvider){
$routeProvider
.when('/',
{templateUrl : '/routView1.html'})
});
Run Code Online (Sandbox Code Playgroud) 我正在尝试创建一个包含a std::vector的类void*.有人告诉我,这void*是与Java相当的C++ Object.由于这是用Java编写的程序的C++端口,因此它应该在理论上起作用.
Java的:
ArrayList<Object> list;
Run Code Online (Sandbox Code Playgroud)
C++:
vector<void*> list;
Run Code Online (Sandbox Code Playgroud)
这将无法编译,给出错误:"'reference':非法使用'void'类型".
是void*真正的C++相当于Java的的Object?我用错了吗?
有没有办法知道我的所有GO,纹理,声音等是什么,在所有场景中都没有使用,要删除它?当我测试我的游戏时,我插入了一些纹理,声音,GO等,其中一些没有使用.我正在使用Unity 5.1.1.
我正在尝试编写代码,我总是返回对象本身,以便我可以继续链接.像这样
object.SetThis().SetThat().SetThisThirdThing().setThisFourthThing();
Run Code Online (Sandbox Code Playgroud)
我在所有方法中都返回这个,所以我可以继续这样做.但是我的一个方法是我在基类中创建的,当然然后返回基类.
所以不是public MyClass SetThat()它返回public SuperClass SetThat().并且因为它返回SuperClass而不是MyClass我不能调用SetThisThirdThing()因为基类不知道它.
那么我如何施展它以便我能保持链条?语法是什么?我试过了
object.SetThis().(MyClass)SetThat().SetThisThirdThing().setThisFourthThing();
Run Code Online (Sandbox Code Playgroud)
或者有没有办法让superClass方法在从子类调用时返回子类,而不必在所有子类中重写它?
这是所有子类共有的东西之一,所以如果我能够以某种方式绕过它而不必在所有子类中覆盖它,那将是非常好的.