我最近发现x**.5并且math.sqrt(x)并不总是在Python中产生相同的结果:
Python 2.6.1 (r261:67517, Dec 4 2008, 16:51:00) [MSC v.1500 32 bit (Intel)]
on win32
>>> 8885558**.5 - math.sqrt(8885558)
-4.5474735088646412e-13
Run Code Online (Sandbox Code Playgroud)
检查低于10**7的所有整数,这两种方法对几乎正好0.1%的样本产生不同的结果,对于较大的数字,误差的大小增加(缓慢).
所以问题是,哪种方法更准确?
对于我正在处理的网站,我们正在改进一种资源的网址 - 特别是从数字ID转向唯一的描述性字符串.类似的例子是从通过数字数据库ID识别用户切换到通过用户名识别它们(不是我们的具体情况,而是类似的).因此,访问用户信息的URL看起来像:
/users/48573
Run Code Online (Sandbox Code Playgroud)
现在它看起来像
/users/thisisausername.
Run Code Online (Sandbox Code Playgroud)
对于API的传统消费者来说,唯一的问题是我们仍然需要能够以某种方式通过数字ID获取它们.我们不需要REST URL本身来重定向(例如,/users/48573不应该重定向到/users/thisisausername),我们只需要一种方法来使用旧标识符获取正确的数据.该解决方案应该提供另一种方式来访问用户信息(方便地包括新标识符,用户名),或者通过ID访问用户名.一些可能的解决方案可能是
/users/byid/48573/users/48573?fetchby=id或/users/48573?byid=true/identifiers/username/48573哪些(如果有的话)最接近正确的REST?你会如何处理这个问题?
我尝试过wcscat()但是我得到了运行时访问冲突.
wchar_t* a = L"aaa";
wchar_t* b = L"bbb";
wchar_t* c;
c = wcscat(a, b);
Run Code Online (Sandbox Code Playgroud)
有人能告诉我这里有什么问题吗?或者另一种解决我问题的方法?谢谢
我已经熟悉了iPhone SDK中的NSXMLParser,但我发现它的事件驱动性质对我来说很尴尬.我只是想提取一些元素值,但是这个必须处理startElement,foundCharacters和endElement的概念似乎比实际应该更多的工作.我只是以错误的方式看待这个问题,还是在iPhone SDK中使用XML更简单的基于树/ DOM的方式?
如果建议只是使用NSXMLParser,是否有某些设计模式可以用来保持我的代码在startElement方法中没有5级嵌套ifs?
我有一个哈希表,可以包含任意数量的对象.所有这些对象都实现了一些类似的方法/属性和一些自己的方法/属性.
例如,哈希表中的所有对象可能都有一个名为PrintText的方法,该方法采用string类型的单个参数.然而,所有对象都是从不同的类中实例化的.
我是否有可能通过其键从哈希表中提取特定对象而不知道它在运行时的类型,并访问所有自己的方法和属性(而不仅仅是常见的方法和属性)?
通常我会做类似的事情,
MyClass TheObject = MyHashTable [Key];
但是被拔出的对象可以从任何类派生,所以在这种情况下我不能这样做.
我看到了单独的动画之间的相互作用,我真的很感激任何消除这种效果的建议.
基本上:我有一个iPhone应用程序,在根视图上包含一个按钮'a'.点击"a"会使用翻转动画在导航视图控制器堆栈上推送视图.推送视图有一个按钮,可以将视图弹回到根目录.
底层代码:
- (IBAction)pushOneView{
TheAppDelegate *delegate = [[UIApplication sharedApplication] delegate];
[UIView beginAnimations:nil context:NULL];
[UIView setAnimationDuration:0.5];
[UIView setAnimationCurve:UIViewAnimationCurveEaseInOut];
[UIView setAnimationTransition: UIViewAnimationTransitionFlipFromRight
forView:delegate.navigationController.view cache:NO];
[delegate.navigationController
pushViewController:oneViewController animated:NO];
[UIView commitAnimations];
Run Code Online (Sandbox Code Playgroud)
}
这似乎工作正常,动画非常流畅.
根视图还包括子视图('panelView')和另一个按钮'b'.panelView可以显示另外两个子视图 - 使用旋转动画点击这些子视图之间的"b"交换.代码:
-(IBAction)swapPanels{
UIViewController *coming;
UIViewController *going;
float rotation;
if (self.aPanel.view.superview == nil) {
coming = aPanel;
going = bPanel;
rotation = 3.14;
}
else {
coming = bPanel;
going = aPanel;
rotation = -3.14;
}
// First half of spin
[UIView beginAnimations:nil context:NULL];
[UIView setAnimationDuration:0.25];
CGAffineTransform swirlTransform = …Run Code Online (Sandbox Code Playgroud) 我们一直在使用Pro Essentials图形(gigasoft.com),但它与delphi不能很好地兼容,所以它一直在引发问题.
我们需要显示波形和条形图(不是同时显示).波形可能有数千个点.我们需要一些功能齐全的东西,这是一种"活的"产品.
我们的应用程序是本机win32 delphi 2009应用程序.
谢谢你的建议!
出于某些性能原因,我试图找到一种方法来仅选择所选节点的兄弟节点.例如,
<div id="outer">
<div id="inner1"> </div>
<div id="inner2"> </div>
<div id="inner3"> </div>
<div id="inner4"> </div>
</div>
Run Code Online (Sandbox Code Playgroud)
如果我选择了inner1节点,有没有办法让我访问它的兄弟inner2-4节点?
我在一个拥有大量工具的地方工作,需要大量的选择,所以我非常依赖我的shell的历史.我甚至不时地支持它,以确保我不会失去有用的,冗长的命令.
我只是键入了其中一个命令,我想确保它已刷新到历史文件,但我在后台有一个长时间运行的工作,我无法输入exec zsh.在这种情况下我还能做些什么吗?
(当然,我可以将其复制并粘贴到文件中,但是存在flush-history命令会更合乎逻辑.)
我正在尝试更多地了解系统如何真正在顶部所有漂亮的图形下工作.所以我现在正在使用BIOS在启动时加载的512字节内存,在我猜的时候真的不能称之为引导加载程序.无论如何,我正在替换一个中断向量,但有问题.更换中断09h(键盘)后,它正常工作,在按键上输出"Memory messing".但没什么.之后的每一个按键都什么都不做.我不知道系统是否崩溃,或者我是否遗漏了我的处理程序中的内容,这里是代码:
jmp start
times 100 db 0 ; Cleared space for stack
start:
xor ax, ax
mov ax, start
sub ax, 80
mov sp, ax
mov al, 0x09 ; Interupt number
mov bl, 4
mul bl
mov bx, ax
xor ax, ax
mov es, ax
mov [es:bx], word prints ; My interupt handler
add bx, 2
mov [es:bx], word 0x00
bloader:
jmp bloader
prints:
cli
push ax
push bx
push si
mov si, msg ; Message to print
mov …Run Code Online (Sandbox Code Playgroud)