在python中,我通常只是通过范围循环
for i in range(100):
#do something
Run Code Online (Sandbox Code Playgroud)
但现在我想跳过循环中的几个步骤.更具体地说,我想要这样的东西continue(10)
,它将跳过整个循环并将计数器增加10.如果我在C中使用for循环我只是总和10 i
,但在Python中并没有真正起作用.
我一直在使用numpy并需要random.choice()函数.遗憾的是,在2.0版本中,它不在随机或random.mtrand.RandomState模块中.它被排除在特定原因之外吗?关于它的讨论或文档中没有任何内容!
有关信息,我在mac os上的python 2.7上运行Numpy 2.0.全部由站点上提供的标准安装程序安装.
谢谢!
我一直在玩IPython.parallel并且我想使用我自己的一些自定义模块,但是无法按照烹饪书中的说明使用它dview.sync_imports()
.对我有用的唯一一件事就是
def my_parallel_func(args):
import sys
sys.path.append('/path/to/my/module')
import my_module
#and all the rest
Run Code Online (Sandbox Code Playgroud)
然后在主要的到
if __name__=='__main__':
#set up dview...
dview.map( my_parallel_func, my_args )
Run Code Online (Sandbox Code Playgroud)
在我看来,正确的方法是这样的
with dview.sync_imports():
import sys
sys.path.append('/path/to/my/module')
import my_module
Run Code Online (Sandbox Code Playgroud)
但是这会抛出一个错误,说没有命名的模块my_module
.
那么,使用它的正确方法是什么dview.sync_imports()
?
所以,这应该是对这个帖子的评论,但它显然已经关闭了,所以就这样了.我已经用matplotlib和numpy和mencoder成功地玩了,正如这里所建议的那样.我已经采用了Voki Codder缓冲区到stdin解决方案,这大大加快了整个过程.问题是,我在命令的-format ="bgra"部分找不到任何文档.这意味着字节是从右到左的蓝绿色红色alpha,右边.他们必须是uint32,或其他什么.问题是我正在绘制花车的彩色图,所以我试图将它们转换为灰度,但是我得到了许多奇怪的模式让我坚信我做错了什么.我写了这个函数来从一个范围内的浮点数转换为uint32.但结果并不是我预期的原因,我做了一件非常愚蠢的事情吗?
def grayscale(x, min, max):
return np.uint32((x-min)/(max-min)*0xffffff)
Run Code Online (Sandbox Code Playgroud) 因此,我正在尝试编写一个非常简单的 Android 应用程序,当按下按钮时,它会从 URL 获取响应。kotlin Android 扩展已被宣传为 Java 中所需样板文件的直接替代品,所以我尝试了一下。到目前为止,这是我尝试过的:
package com.example.susemihl.myapplication
import android.os.Bundle
import android.support.v7.app.AppCompatActivity
import android.widget.TextView
import kotlinx.android.synthetic.main.activity_main.*
import kotlinx.coroutines.experimental.CommonPool
import kotlinx.coroutines.experimental.async
import kotlinx.coroutines.experimental.runBlocking
import java.net.URL
suspend fun fetch_url(url: String): String {
return URL(url).readText()
}
fun fetch_async(url: String, view: TextView) = runBlocking {
val result = async(CommonPool) { fetch_url(url) }
view.setText(result.await())
}
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
mainTextView.setText("Hello there.")
mainButton.setOnClickListener {
mainButton.setText("Check again.")
fetch_async("https://random-app.appspot.com/",
mainTextView)
}
}
}
Run Code Online (Sandbox Code Playgroud)
这间歇性地起作用,但现在完全被破坏了。单击按钮没有任何响应。打印调试显示线程已执行,但似乎挂在 readText() 调用上。我在这里做错了什么愚蠢的事情吗?
每当我定义一个有许多参数的类时,我经常会发现自己在做这样的事情
class myClass(object):
def __init__(self,param1,param2,param3, ...):
self.param1 = param1
self.param2 = param2
self.param3 = param3
...
Run Code Online (Sandbox Code Playgroud)
我的问题是:有没有更聪明的Pythonier方式呢?
谢谢,亚历克斯.