问题列表 - 第37774页

获取Python函数以干净地返回标量或列表,具体取决于参数的数量

免责声明:我正在寻找一个Python 2.6解决方案,如果有的话.

我正在寻找一个函数,当传递单个值时返回单个值,或者在传递多个值时返回一个序列:

>>> a = foo(1)
2
>>> b, c = foo(2, 5)
>>> b
3
>>> c
6
Run Code Online (Sandbox Code Playgroud)

要清楚,这是为了使一些函数调用看起来比以下更好:

a, = foo(1)
Run Code Online (Sandbox Code Playgroud)

要么

a = foo(1)[0]
Run Code Online (Sandbox Code Playgroud)

现在,不优雅的解决方案是这样的:

def foo(*args):
    results = [a + 1 for a in args]
    return results if len(results) > 1 else results[0]
Run Code Online (Sandbox Code Playgroud)

是否有任何语法糖(或功能)会让这感觉更清洁?以下任何事情?

def foo(*args):
    return *[a + 1 for a in args]
Run Code Online (Sandbox Code Playgroud)

python python-2.x python-2.6 iterable-unpacking

5
推荐指数
2
解决办法
3896
查看次数

为什么WP7全景页面会在更新时跳回?

我正在构建一个GPS相关的应用程序,显示其他计算中的坐标.我的演示代码设置为每秒触发事件.

每当我更新主页面UI(例如,具有计算的纬度的文本框)时,它都可以正常工作.

问题是如果我试图从一侧"轻弹"到另一侧,更改页面.在"轻弹"的过程中,如果要更新文本框,它会将主页面跳回到视图中.

没有视频很难在文本中解释.但想象一下,点击n-holding,然后轻轻地拉开全景屏幕 - 比如说,看看下一页,但还没有翻转.好吧,如果文本框在那段时间内要更新,你将松开鼠标点击保持,它会跳回到主页面.

一旦你到达下一页,它就会停留,我可以看到上一页的溢出更新.没什么大不了的.但它只是试图进入下一页.

我是WP7/Silverlight的新手,所以我一直在尝试使用Dispatcher来提高响应速度.无论我做什么(使用Dispatcher),都会发生这种情况.所以,我猜这与更新的UI有关.

一些小代码总能帮助:

void GeoWatcher_PositionChanged(object sender,
    GeoPositionChangedEventArgs<GeoCoordinate> e)
{
    Deployment.Current.Dispatcher.BeginInvoke(() => MyPositionChanged(e));
}
void MyPositionChanged(GeoPositionChangedEventArgs<GeoCoordinate> e)
{
    var model = GeoProcessor.GetPosition(e.Position);

    latitude.Text = model.Latitude;
    longitude.Text = model.Longitude;
    altitude.Text = model.Altitude;
    accuracy.Text = model.Accuracy;
    direction.Text = model.Direction;
    speed.Text = model.Speed;
    speedAvg.Text = model.SpeedAvg;

}
Run Code Online (Sandbox Code Playgroud)

当更新任何这些文本框时,屏幕会"跳转"回主页面.有点不好的经历.

也许这是正常的?知道用户是否试图"滑动"到下一页是否有事件可以吸引?

提前致谢.

windows-phone-7 windows-phone panorama-control

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

LinkBut​​ton永久下划线

我正在使用asp:LinkBut​​ton.该文本悬停在它上面时强调.但是我希望它总是有下划线.谁能告诉我如何实现这一目标?

谢谢!

asp.net controls

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

如何用iOS制作简单的EQ AudioUnit(低音,中音,高音)?

有谁知道如何用iOS制作一个简单的EQ音频单元(3个频段 - 低,中,高)?我知道如何在我的AU Graph中添加iPod EQ音频单元.但它只允许您访问预设,我需要适当控制EQ.

我四处寻找一些教程或解释,但没有运气.

谢谢.

安德烈

iphone signal-processing core-audio audiounit ios

8
推荐指数
3
解决办法
2万
查看次数

更改Web服务器查找映像的默认路径

我正在尝试更改默认路径或添加网络服务器查找图像的路径.我真的很想在PHP中做一个解决方案,而不是在htaccess中.

最基本的例子是试图"打破"当前的实现,所以说我有一个目录,其中包含以下内容:

主要/

  • image.png
  • 的index.php

index.php:

<?php
// Change the directory WAY out of current directory
chdir('../../../');
echo getcwd(); // DEFINITELY NOT where image.png is located

?>

<img src="image.png" width="402" height="265" alt="1">
<!-- WHY ARE YOU STILL RENDERING?!?! -->
Run Code Online (Sandbox Code Playgroud)

如果您理解我的观点或者您有任何疑问,请告诉我.

谢谢大家!马特穆勒

php directory default chdir

0
推荐指数
1
解决办法
2927
查看次数

相关视图消失后调用的CATiledLayer drawInContext

我今天遇到了一个涉及CATiledLayer的有趣的iOS问题.这只发生在设备上 - 而不是在模拟器中.

我的视图通过drawLayer:inContext:delegate callback在其CALayer中绘制.该图层具有CATiledLayer派生的子图层,该图层在重写的drawInContext:方法中执行自己的绘图.

这两个层都通过CGContextDrawPDFPage()呈现pdf内容.(CALayer绘制低分辨率版本,而CATiledLayer子层在顶部绘制高分辨率内容.)

我遇到了一个我将完成视图的场景 - 将其从超级视图中删除并释放它.在视图上调用dealloc().稍后,系统将调用CATiledLayer的drawInContext:方法(在后台线程上).它会绘制,但是从方法返回时,Springboard会崩溃,并且在这样做时,也会关闭我的应用程序.

我通过在视图的dealloc方法中在CATiledLayer中设置一个标志来修复它,告诉它不再渲染.

但我只能想象有一种更优雅的方式.为什么仍然在父图层之后调用CATiledLayer drawInContext:方法,并且父图层的视图被解除分配?关闭视图的正确方法是什么,以免发生这种情况?

calayer catiledlayer ios

4
推荐指数
1
解决办法
1810
查看次数

Javascript Regex:如何将变量放在正则表达式中?

例如:

function(input){
    var testVar = input;
    string = ...
    string.replace(/ReGeX + testVar + ReGeX/, "replacement")
}
Run Code Online (Sandbox Code Playgroud)

但这当然不起作用:)有没有办法做到这一点?

javascript regex variables

183
推荐指数
6
解决办法
14万
查看次数

如何在struts属性字符串中插入java表达式

我有以下内容:

<html:select property="myMap(abc)">

但是,我真正需要做的是abc从java类的静态成员中提取字符串.

我觉得有点像

<html:select property="myMap(<%=MyClass.FIELD%>)"> ,但那没用.

这里的语法是什么?

java jsp struts taglib

3
推荐指数
1
解决办法
907
查看次数

为什么这些矩阵乘法的性能如此不同?

我用Java编写了两个矩阵类,只是为了比较矩阵乘法的性能.一个类(Mat1)存储矩阵double[][] A行所在的成员.其他类(MAT2)存储和其中是的转置.iA[i]ATTA

假设我们有一个方矩阵M,我们想要它的乘积M.mult(M).打电话给产品P.

当M是Mat1实例时,使用的算法是直截了当的:

P[i][j] += M.A[i][k] * M.A[k][j]
    for k in range(0, M.A.length)
Run Code Online (Sandbox Code Playgroud)

在M是我使用的Mat2的情况下:

P[i][j] += M.A[i][k] * M.T[j][k]
Run Code Online (Sandbox Code Playgroud)

这是相同的算法,因为T[j][k]==A[k][j].在1000x1000矩阵上,第二个算法在我的机器上花费大约1.2秒,而第一个算法花费至少25秒.我期待第二个更快,但不是这么多.问题是,为什么这么快?

我唯一的猜测是第二个更好地利用了CPU缓存,因为数据以大于1个字的块的形式被拉入缓存,第二个算法通过仅遍历行来获益,而第一个算法忽略了拉入的数据缓存通过立即到达下面的行(在内存中大约1000个字,因为数组以行主要顺序存储),没有缓存的数据.

我问了一个人,他认为这是因为更友好的内存访问模式(即第二个版本会导致更少的TLB软故障).我根本没有想到这一点,但我可以看到它如何导致更少的TLB故障.

那么,这是什么?还是有其他原因导致性能差异?

java performance matrix-multiplication

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

如何将字符串与第一个逗号(如果存在)与Ruby regexp匹配

我正在努力获得一个regexp(在Ruby中),它将提供以下内容

"one, two" -> "one"
"one, two, three" -> "one"
"one two three" -> "one two three"
Run Code Online (Sandbox Code Playgroud)

我希望匹配任何字符直到字符串中的第一个逗号.如果没有逗号,我希望整个字符串匹配.到目前为止,我的最大努力是

/.*(?=,)?/
Run Code Online (Sandbox Code Playgroud)

这从以上示例产生以下输出

"one, two" -> "one"
"one, two, three" -> "one, two"
"one two three" -> "one two three"
Run Code Online (Sandbox Code Playgroud)

关闭但没有雪茄.有人可以帮忙吗?

ruby regex

7
推荐指数
3
解决办法
3万
查看次数