小编Sri*_*ila的帖子

在Python程序中嵌入(创建)交互式Python shell

是否可以在Python程序中启动交互式Python shell?

我想使用这样一个交互式Python shell(我的程序执行中运行)来检查一些程序内部变量.

python

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

numpy求和矩阵 - 按索引排列

我有3个矩阵(np数组):
A是形状(n,m); B的形状为(m,k); 和C的形状(n,k)

矩阵C只有集合{-1,0,1}中的值,它是某种类型的"指标":如果C [i,j] == 1那么我想将第i行添加到b的第j列; 如果C [i,j] ==( - 1)则减去(0不做任何事).

它可以很容易地用循环来完成,但我想知道是否有一种矢量化的方式可以做得更快?

示例代码:

C = np.array([[-1,  0,  0,  0,  1],
              [ 0,  0,  0,  0, -1],
              [ 0,  0,  0,  0, -1],
              [-1,  0,  0,  1,  1]])
a,b = np.where(C==1)
#here a=[0,3,3] and b=[4,3,4]
A[a,:] = [[0, 1, 2, 3, 4, 5, 6],
          [3, 3, 3, 3, 3, 3, 3],
          [3, 3, 3, 3, 3, 3, 3]]
B[:,b] += A[a]  #B is all 0.0 before  
Run Code Online (Sandbox Code Playgroud)

预期结果:

array([[ 0., …
Run Code Online (Sandbox Code Playgroud)

python numpy vectorization

6
推荐指数
1
解决办法
125
查看次数

Laravel 对象到数组

有一段时间我尝试使用数组而不是集合,就像 Laravel 那样。

我尝试过这种方法,但没有成功:

Event::listen(StatementPrepared::class, function ($event) {
    $event->statement->setFetchMode(...);
});
Run Code Online (Sandbox Code Playgroud)

正如在https://laravel.com/docs/5.4/upgrade#upgrade-5.4.0 上解释的那样,但它不起作用......

我也尝试这样做:

DB::table('users')->where([...])->take(1)->get()->toArray();
Run Code Online (Sandbox Code Playgroud)

但它正在做:

Array ( [0] => stdClass Object ( [uid] => 1 [...]) )
Run Code Online (Sandbox Code Playgroud)

我知道论坛上有更多关于它的信息,但它们都已经过时了。

谢谢

php arrays object laravel laravel-5

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

如何在Python Selenium中逐步向下滚动

大家好,我是 Selenium 和 Python 的新手。我刚刚抓取了pagalguy 网站。我知道如何向下滚动到页面底部,但我需要的是逐步向下滚动,以便 Selenium 单击所有“阅读更多”按钮,但我不知道如何像这样逐步向下滚动,所以我像下面这样对它进行了硬编码

browser.execute_script("window.scrollTo(0,300);")
browser.find_element_by_link_text("Read More...").click()

browser.execute_script("window.scrollTo(300,600);")
browser.find_element_by_link_text("Read More...").click()

browser.execute_script("window.scrollTo(600,900);")
browser.find_element_by_link_text("Read More...").click()

browser.execute_script("window.scrollTo(900,1200);")
browser.find_element_by_link_text("Read More...").click()

browser.execute_script("window.scrollTo(1200,1500);")
browser.find_element_by_link_text("Read More...").click()

browser.execute_script("window.scrollTo(1500,1800);")
browser.find_element_by_link_text("Read More...").click()

browser.execute_script("window.scrollTo(1800,2100);")
browser.find_element_by_link_text("Read More...").click()

browser.execute_script("window.scrollTo(2100,2500);")
browser.find_element_by_link_text("Read More...").click()
it goes on .......
Run Code Online (Sandbox Code Playgroud)

我尝试使用 while 循环自动执行它,但它导致了错误,上面的循环有效,但我希望它短且循环,以便我可以将它用于具有不同页面长度的所有其他页面。

initial_value = 0
next_value = 300
while next_value<300000: 
  browser.execute_script("window.scrollTo(initial_value,next_value);")
  browser.find_element_by_link_text("Read More...").click()
  initial_value=next_value
  next_value+=300
Run Code Online (Sandbox Code Playgroud)

JavascriptException:消息:ReferenceError:initial_value 未定义

但我已经定义了值,我想我解释了我实际上想要做什么,我想自动向下滚动并单击所有阅读更多按钮,然后我将获得全文内容

python selenium web-crawler web-scraping python-3.x

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

Tkinter StringVar() 连接

我正在将 Tkinter lib 用于 Python gui,并且我想使用循环显示 Excel 工作表中的文本,以及框架内的标签,但是,由于 StringVar 仅具有设置功能,因此我无法插入新值或连接细绳

print('Matched Tweets')
        for i, element in enumerate(ranked_tweets):
            for j in range(1, 8):
             result.set(worksheet._get_cell((element + 1), j).value+"\n")
        #result.set("\n")
Run Code Online (Sandbox Code Playgroud)

其中,结果是 stringVar,它显示在 gui 的标签内

Label1= ttk.Label(frame1, textvariable=result)
Run Code Online (Sandbox Code Playgroud)

当我运行应用程序时,它只显示一个结果,因为它每次迭代都用 set 方法覆盖变量。

我的问题是,如何使用 stringVar 列出所有文本

python string excel user-interface tkinter

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

使用PHP中的数组无需重复的随机数

我正在尝试用PHP创建一个随机数生成器.它应该一次生成三(3)个数字,不重复.也就是说,3个数字不能相同.

这是我到目前为止所尝试的:

$array = [];

$A = mt_rand(1,36);
$array[0] = $A;

$B = mt_rand(1,36);
$array[1] = $B;

if(in_array($B,$array)){
    $B = mt_rand(1,36);
    $array[1] = $B;
}

$C = mt_rand(1,36);
$array[2] = $C;

if(in_array($C,$array)){
    $C = mt_rand(1,36);
    $array[2] = $C;
}

$length = count($array);

//display the array values;

for($i = 0; $i < $length; $i++){
    echo ($array[$i]."<br>");
}
Run Code Online (Sandbox Code Playgroud)

谁能告诉我哪里出错了?

php random

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