小编raf*_*elc的帖子

为什么列表理解比附加到列表要快得多?

我想知道为什么列表理解比附加到列表要快得多.我认为差异只是表达,但事实并非如此.

>>> import timeit 
>>> timeit.timeit(stmt='''\
t = []
for i in range(10000):
    t.append(i)''', number=10000)
9.467898777974142

>>> timeit.timeit(stmt='t= [i for i in range(10000)]', number=10000)
4.1138417314859
Run Code Online (Sandbox Code Playgroud)

列表理解速度提高了50%.为什么?

python list-comprehension list python-2.7 python-3.x

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

onPageFinished()从未调用过(webview)!

我想在webview完全加载时显示一个toast.但吐司永远不会出现,我不知道为什么......我的代码是:

public class WebViewSignUp extends Activity{

    WebView mWebView;

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.webviewsignup);

        mWebView = (WebView) findViewById(R.id.webview);
        mWebView.getSettings().setJavaScriptEnabled(true);

        ((TextView)findViewById(R.id.home)).setOnClickListener(new OnClickListener(){
            public void onClick(View v) {
                finish();
            } 
         });

    mWebView.setWebViewClient(new WebViewClient() {
        @Override  
        public void onPageFinished(WebView view, String url) {
             super.onPageFinished(mWebView, url);

            Toast.makeText(getApplicationContext(), "Done!", Toast.LENGTH_SHORT).show();
        }  
    });
    mWebView.loadUrl("http://pabebbe.com/m/register");

    mWebView.setWebViewClient(new WebViewClient() {
       public void onReceivedError(WebView view, int errorCode, String description, String failingUrl) {
         Toast.makeText(getApplicationContext(), "Oh no! " + description, Toast.LENGTH_SHORT).show();
       }
       });
    }
}
Run Code Online (Sandbox Code Playgroud)

android load webview toast

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

什么是属性对象?

我不是python的新手,但我在这里有一个非常基本的问题.

我正在玩python,发现有type属性

>>> property
<type 'property'>
Run Code Online (Sandbox Code Playgroud)

但我只听说过函数上下文中的属性.

>>> a = property()
<property object at 0x0246C090>
Run Code Online (Sandbox Code Playgroud)

但是财产对象怎么样?它们有什么用?属性方法不是非常直观或暗示性的

>>> dir(a)
['__class__', '__delattr__', '__delete__', '__doc__', '__format__', '__get__', '__getattribute__', '__hash__', '__init__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__set__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', 'deleter', 'fdel', 'fget', 'fset', 'getter', 'setter']
Run Code Online (Sandbox Code Playgroud)

谢谢你的关注!

python properties python-2.7

12
推荐指数
2
解决办法
1万
查看次数

浮点数必须是字符串还是数字?

我有一个非常简单的程序.代码:

money = open("money.txt", "r")
moneyx = float(money)
print(moneyx)
Run Code Online (Sandbox Code Playgroud)

文本文件money.txt仅包含以下内容:

0.00
Run Code Online (Sandbox Code Playgroud)

我收到的错误消息是:

TypeError: float() argument must be a string or a number
Run Code Online (Sandbox Code Playgroud)

这很可能是一个简单的错误.有什么建议?我使用的是Python 3.3.3.

python type-conversion text-files

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

在Numpy Python中将1d数组附加到2d数组

我有一个numpy二维数组[[1,2,3]].我需要在它上面附加一个numpy 1D数组[4,5,6],以便它成为[[1,2,3], [4,5,6]]

使用列表很容易实现,只需在2D列表中调用append即可.

但你如何在Numpy阵列中做到这一点?

np.concatenate并且np.append不工作.由于某种原因,他们将数组转换为1D.

谢谢!

python arrays numpy append

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

Pandas Dataframe Multiindex Merge

我想问一个关于在大熊猫中合并多索引数据帧的问题,这是一个假设的场景:

arrays = [['bar', 'bar', 'baz', 'baz', 'foo', 'foo', 'qux', 'qux'],
            ['one', 'two', 'one', 'two', 'one', 'two', 'one', 'two']]
tuples = list(zip(*arrays))
index1 = pd.MultiIndex.from_tuples(tuples, names=['first', 'second'])
index2 = pd.MultiIndex.from_tuples(tuples, names=['third', 'fourth'])

s1 = pd.DataFrame(np.random.randn(8), index=index1, columns=['s1'])
s2 = pd.DataFrame(np.random.randn(8), index=index2, columns=['s2'])
Run Code Online (Sandbox Code Playgroud)

然后

s1.merge(s2, how='left', left_index=True, right_index=True)
Run Code Online (Sandbox Code Playgroud)

要么

s1.merge(s2, how='left', left_on=['first', 'second'], right_on=['third', 'fourth'])
Run Code Online (Sandbox Code Playgroud)

会导致错误.

我是否必须在s1/s2上执行reset_index()才能使其工作?

谢谢

python merge multi-index pandas

11
推荐指数
4
解决办法
8611
查看次数

如何在崩溃时自动监视并重启docker容器?

我目前正在运行两个带有官方鬼图像nginx-proxy图像的虚拟服务器,这是我的构建.

docker run -d -p 86:2368 --name home -e "VIRTUAL_HOST=hostname.com" ghost 
docker run -d -p 85:2368 --name home-blog -e "VIRTUAL_HOST=blog.hostname.com" ghost
Run Code Online (Sandbox Code Playgroud)

它们都运行良好,但过了一段时间(有时是几小时或一天),其中一个虚拟服务器将崩溃,我必须重新启动容器才能使其正常工作.

我想知道是否有任何解决方案可以自动监控docker容器并在它关闭时重新启动它?

docker

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

更改动态任务中自动生成的任务名称

我正在尝试创建一个动态工作流程,但想要更改气流自动生成的任务名称并将其分配给列表中的任务。我尝试访问上下文并手动更改,taskid但这在 UI 中的管道渲染期间也不起作用。

我的代码

    def get_the_route(router_ip, taskid):
        dev1 = junos_ops()
        dev1.open_fabric_connection()
        result = dev1.dev_handler.rpc.get_route_information(destination="10.0.0.3", normalize=True)

        logger.info("result is: {}".format(pformat(result)))
        dev1.close_fabric_connection()
       # <--do-some-logic-->
        return {"result": result}

    for dev in dev_list:
        get_the_route_dev_list.append(get_the_route(router_ip=dev, taskid=dev))
    start >> hello_task >> get_the_route_dev_list >> bye_task >> end
Run Code Online (Sandbox Code Playgroud)

生成的图

阿帕奇气流用户界面

无论如何,是否可以为动态任务指定不同的名称?我知道这可以使用PythonOperator. 但我正在尝试使用它来做到这TaskFlow API一点。

谢谢

python airflow

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

Numpy:将方阵的索引转换为上三角索引的有效方法

问题:给定一个索引元组,返回上三角指数的顺序.这是一个例子:

假设我们有一个形状的方阵A(3,3).

A具有6个上三角形索引,即(0,0),(0,1),(0,2),(1,1),(1,2),(2,2).

现在我知道索引(1,2)处的元素,它是属于A的上三角部分的索引.我想返回4(这意味着它是所有上三角索引中的第5个元素.)

关于如何做到这一点的任何想法?

最好的,志浩

python numpy matrix

7
推荐指数
1
解决办法
498
查看次数

替换单词和字符串熊猫

    dataframe = pd.DataFrame({'Date':['This 1A1619 person BL171111 the A-1-24',
                                  'dont Z112 but NOT 1-22-2001',
                                  'mix: 1A25629Q88 or A13B ok'], 
                          'IDs': ['A11','B22','C33'],
                          }) 

           Date                                 IDs
0   This 1A1619 person BL171111 the A-1-24      A11
1   dont Z112 but NOT 1-22-2001                 B22
2   mix: 1A25629Q88 or A13B ok                  C33
Run Code Online (Sandbox Code Playgroud)

我上面有数据框。我的目标是替换所有混合的单词/数字组合,不带连字符,-例如1A1619Ior BL171111A13Bbut NOT 1-22-2001A-1-24字母M。我试图通过使用正则表达式识别字母/数字组合并存储在字典中来使用以下代码

dataframe['MixedNum'] = dataframe['Date'].str.replace(r'(?=.*[a-zA-Z])(\S+\S+\S+)','M') 
Run Code Online (Sandbox Code Playgroud)

但是我得到了这个输出

                          Date              IDs     MixedNum
0   This 1A1619 person BL171111 the A-1-24  A11     M M …
Run Code Online (Sandbox Code Playgroud)

python regex string python-3.x pandas

7
推荐指数
1
解决办法
90
查看次数