在http://docs.python.org/library/json.html中:
simplejson.load(fp[, encoding[, cls[, object_hook[, parse_float[, parse_int[, parse_constant[, object_pairs_hook[, use_decimal[, **kw]]]]]]]]])将fp(一个.read() - 支持包含JSON文档的类文件对象)反序列化为Python对象.
我所知道的read()和write()做的.
但是在阅读本说明书后"阅读() -支持类似文件的对象",我发现我不知道是什么对象类型支持read()和write().
我在其他文档中找不到.任何人都可以详细说明声明?
为什么我问这个问题是为了让"simplejson.load(urllib.open(...))"完成.
"urllib.open(...)"的返回值不是有效对象,因此我必须为simplejson定制它.但是,似乎该字符串不是read() - 支持.
由于argparse,我有两个可以在shell中使用的Python脚本.
setup.py的相关部分:
setup(
# (...)
zip_safe=True,
scripts=['bin/bgce.py', 'bin/sizes.py'],
packages=find_packages(),
data_files=data_files,
entry_points = {
'console_scripts': [
'bgce = bgce:main',
'sizes = sizes:main',]
}
)
Run Code Online (Sandbox Code Playgroud)
我最终在/ usr/local/bin中使用了bgce,bgce.py,sizes,sizes.py.全部4个工作.
如果我遗漏了包或脚本行,则没有重复项,但文件会像这样失败:
Traceback (most recent call last):
File "/usr/local/bin/bgce", line 9, in <module>
load_entry_point('Backtestground==1.0', 'console_scripts', 'bgce')()
File "/usr/lib/python2.6/dist-packages/pkg_resources.py", line 305, in load_entry_point return get_distribution(dist).load_entry_point(group, name)
File "/usr/lib/python2.6/dist-packages/pkg_resources.py", line 2244, in load_entry_point return ep.load()
File "/usr/lib/python2.6/dist-packages/pkg_resources.py", line 1954, in load
entry = __import__(self.module_name, globals(),globals(), ['__name__'])
ImportError: No module named bgce
Run Code Online (Sandbox Code Playgroud)
我该怎么办才能安装bgce和大小,没有重复的烦人(for tab-completion).py附加?
我知道Visual Studio无法以人们期望的方式增加构建号,但它支持随机化构建号:
我的AssemblyInfo.cs文件包含:
// Version information for an assembly consists of the following four values:
//
// Major Version
// Minor Version
// Build Number
// Revision
//
// You can specify all the values or you can default the Build and Revision Numbers
// by using the '*' as shown below:
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyFileVersion("1.0.*")]
Run Code Online (Sandbox Code Playgroud)
然而它给出了我看来非感性的结果(甚至允许Visual Studio的伪随机版本号):

所以更简单的问题是:
我投入了什么
AssemblyInfo.cs让它发挥作用?
从MSDN(为清晰起见重新格式化):
您可以指定所有值,也可以使用星号(*)接受默认的内部版本号,修订号或两者.例如,
Run Code Online (Sandbox Code Playgroud)[assembly:AssemblyVersion("2.3.25.1")]表示2为主要版本,3表示次要版本,25表示内部版本号,1表示版本号.版本号如
Run Code Online (Sandbox Code Playgroud)[assembly:AssemblyVersion("1.2.*")]指定1作为主要版本,2指定为次要版本,并接受默认的构建和修订号.版本号如
Run Code Online (Sandbox Code Playgroud)[assembly:AssemblyVersion("1.2.15.*")]指定1作为主要版本,2作为次要版本,15作为构建号,并接受默认修订号.
默认内部版本号每天递增.默认修订号是随机的. …
在Objective-C中,是否有必要覆盖子类的所有继承构造函数以添加自定义初始化逻辑?
例如,对于UIView具有自定义初始化逻辑的子类,以下内容是否正确?
@implementation CustomUIView
- (id)init {
self = [super init];
if (self) {
[self initHelper];
}
return self;
}
- (id)initWithFrame:(CGRect)theFrame {
self = [super initWithFrame:theFrame];
if (self) {
[self initHelper];
}
return self;
}
- (id)initWithCoder:(NSCoder *)decoder {
self = [super initWithCoder:decoder];
if (self) {
[self initHelper];
}
return self;
}
- (void) initHelper {
// Custom initialization
}
@end
Run Code Online (Sandbox Code Playgroud) 最近,我一直在开发一款iphone应用程序,现在我想把它移植到Android上,以便进行更广泛的发布.任何人都可以建议我使用某种方式来"移植"(将这些功能保留在Android友好界面中,或许是iPhone App导航栏和工具栏)?
我有一个4部分CSS3动画点击播放 - 但动画的最后一部分是为了将其从屏幕上取下.
但是,它一旦播放就会回到原来的状态.任何人都知道如何在最后一个css帧(100%)上停止它,或者如何摆脱它曾经玩过的整个div.
@keyframes colorchange {
0% { transform: scale(1.0) rotate(0deg); }
50% { transform: rotate(340deg) translate(-300px,0px) }
100% { transform: scale(0.5) rotate(5deg) translate(1140px,-137px); }
}
Run Code Online (Sandbox Code Playgroud) 这是一个非常简单的问题.我问,因为我以前从未见过它,这让我想知道是不是有什么问题.
comboBox1.MouseEnter += (a, b) => comboBox1.Focus();
campaignDataGridView.MouseEnter += (a, b) => campaignDataGridView.Focus();
Run Code Online (Sandbox Code Playgroud) 我正在制作UDP C/S. 我遇到服务器每秒可以接收的数据数量问题.
我已经测试过向服务器发送10,100,1000批数据消息,10,100没有问题.发送1000时,只收到300~400.所有测试都在本地进行.
我尝试使用ICS的twsocket和Synapse的tudpblocksocket来实现服务器.两者都出现了同样的问题.
可以向我解释为什么会发生这种情况,以及如何改善服务器性能.
使用TUDPBlockSocket的代码
...
while not Terminated do
begin
try
sz := FUDPServer.WaitingData;
if sz > 0 then
begin
FUDPServer.RecvBuffer(mem.Memory, sz);
mem.Seek(0, 0);
AMessage := fFormats.ReadFromStream(mem);
DoMessageReceived(FUDPServer.RemoteSin.sin_addr, AMessage);
end;
finally
end;
end;
Run Code Online (Sandbox Code Playgroud)
...
使用ICS的代码
...
procedure TShapeServer.WSocketDataAvailable(Sender: TObject; ErrCode: Word);
...
begin
SrcLen := SizeOf(Src);
stream := TMemoryStream.Create;
stream.SetSize(INT_BUFFER_SIZE);
Inc(fMessageReceived);
try
Len := FUDPServer.ReceiveFrom(stream.Memory, stream.size, Src, SrcLen);
if (FSenderAddr.S_addr = INADDR_ANY) or
(FSenderAddr.S_addr = Src.Sin_addr.S_addr) then
begin
while stream.Position < Len do
begin
try
AMessage := …Run Code Online (Sandbox Code Playgroud) 如何将字符串作为代码执行(使用eval())并给它一些变量?例如,我有一个命名的对象,vars并希望代码可以访问它的每个属性,而无需明确指定对象名称。像这样的东西:
function evalWithVariables(func, vars) {
//some magic here
return eval(func);
}
function test() {
var retval = evalWithVariables("a>5", {"a":7});
console.log(retval);
}
Run Code Online (Sandbox Code Playgroud)
哦,代码是可信的,它来自与脚本相同的服务器,它不是用户生成的,我很确定这eval是正确的工具(我知道这eval通常是邪恶的)。
编辑:对我来说最重要的是传递给的代码eval()看起来不错,很短,并且不必包含辅助变量名称等。
python ×2
android ×1
c# ×1
css ×1
css3 ×1
delphi ×1
drupal ×1
eval ×1
inheritance ×1
init ×1
javascript ×1
lambda ×1
objective-c ×1
random ×1
setuptools ×1
sockets ×1
udp ×1
uiview ×1