小编Yeo*_*Yeo的帖子

如何将部分维基百科内容检索到Android App?

基本上,我想从维基百科中检索内容.但我想直接在我的Android应用中显示它.不是立即重定向到互联网浏览器,而是首先在我的应用程序中显示它.

目前,我设法通过使用http://en.wikipedia.org/w/api.php?action=parse&prop=text&format=xml&page=Bla_Bla_Bla来请求Wikipedia API并仅获取主要内容.因为我解析数据,我将使用WebView在Android中进行渲染.它成功渲染.但只对那些没有保护的文章......

如果受到保护,例如Mona Lisa,则在WebView Android中无法正确呈现输出.

我想知道是否有人试图检索维基百科内容并在您的Android应用程序中显示它,轻松而美观?

谢谢 :)

xml android mediawiki wikipedia wikipedia-api

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

如何从源代码中禁用std :: clog日志记录?

在开发代码时,我有许多控制台日志记录(std::clog)和一些控制台输出(std::cout).但现在,我想在线提交我的源代码,我想禁用所有控制台日志(clog)但保持控制台输出(cout)

我可以肯定地评论我的所有内容//std::clog,但有没有更好的方法来禁用我的源文件中的所有日志记录?

c++ c++11

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

将参数数组传递给 C# 中的多参数函数

生命短暂

def foo(b,a,r):
    # bla bla bla
    pass

mylist = ['b','a','r']
foo(*mylist) 
Run Code Online (Sandbox Code Playgroud)

这就是在Python中将参数列表传递给方法多个位置参数的方式。

但在C#中,我发现了传递一个数组数组的参数使用PARAMS关键字,像这样的:

void foo(params string[] bar)
{
    // bla bla bla
}

string[] mylist = {"b", "a", "r"};
foo(mylist)
Run Code Online (Sandbox Code Playgroud)

想象一下如果我无法触摸该功能,有没有更简单的方法有没有办法做到这一点?

这就是我的意思:

void foo (string b, string a, string r)
{
    // bla bla bla
}

string[] mylist = {"b", "a", "r"};
foo(mylist[0],mylist[1],mylist[2]); // This line makes my life difficult
Run Code Online (Sandbox Code Playgroud)

我在网上搜索,找不到替代方法。只是想确保我没有错过 C# 提供的隐藏功能。谁知道我们有这样的捷径?

c# python parameters parameter-passing

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

为什么Graph adjacency不定义为邻接集,而是邻接表?

在图论中,我们知道可以使用邻接表数据结构表示顶点邻接。相反,邻接集在图论的任何地方都没有被广泛提及。为什么呢?

这是优点,我能想到。

  1. 作为 Set 属性,图可以在重复边和Set 的许多其他属性方面提供保证。而且从所有设置操作集理论面世哪个更直观与分析工作。如:

    • vertex_set_A | vertex_setB 是联合操作。
    • vertex_set_A & vertex_set_B, 是相交运算。
  2. *观点,Set 更容易理解,因为它在数学证明中具有相关性。它还为低级代码如何处理数组和东西提供了一个很好的抽象。

  3. 在性能方面,可以使用 HashSet 实现,这将提供恒定时间操作。或者 TreeSet 当图形需要在日志时间操作上频繁动态更改时。
  4. 列表数据结构还维护元素的排序属性,这在大多数图中没有用处。事实上,列表以有序的方式迭代,这首先不应该发生。Indexed Ordered 应该无关紧要,Set 可以提供。排序重要的唯一时间是图形加权时,因此基于权重的排序,其中 TreeSet 主要在日志时间操作中运行。

所以,我不确定为什么大多数图算法只提到邻接表。是不是因为技术壁垒,Set更难实现,而List更容易?

algorithm graph list set

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

WMI:Win32_DiskDrive 获取物理磁盘驱动器上的总扇区

我尝试使用Win32_DiskDrive获取磁盘的最大总扇区,但它们都返回错误的值。我使用HxD,该程序返回准确的值。我尝试使用 fdisk 获取 Linux 中的总扇区,它也准确返回。

我注意到Win32_DiskDrive MSDN中有一条注释如下:

该属性的值是通过 BIOS 中断 13h 的扩展功能获得的。如果驱动器使用转换方案来支持高容量磁盘大小,则该值可能不准确。请咨询制造商以获取准确的驱动器规格。

但我没明白这是什么意思?以及如何解决这个问题?

更新1:

这是我的 python 脚本的片段代码。

必需:PythonPyWin32WMI

import wmi

c = wmi.WMI()
for diskDrive in c.query("SELECT * FROM Win32_DiskDrive"):
    print diskDrive.Name, "\nTotal Sector: ", diskDrive.TotalSectors
Run Code Online (Sandbox Code Playgroud)

更新2:

根据要求,这里是检测到 HxD 总扇区的 WMI 片段。

  • WMI: 625137345(顶部)
  • HxD: 625142448(底部)

部门差异截图

更新3:

如果有兴趣,你也可以在自己的计算机上尝试一下,看看Win32_DiskDrive是否报告准确的结果。我在许多其他计算机(WinXP & 7)和其他存储设备(硬盘、闪存盘等)上尝试过此操作,但所有结果都不准确。

要尝试请安装PythonPyWin32WMI

非常感谢

python wmi winapi pywin32 disk

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

Django过滤器匹配所有给定值的m2m字段

鉴于我有詹姆斯和尤金的作者。使用内置的__inQuerySet 将过滤匹配 James 或 Eugene 的 m2m 字段。但是,如果我只想要那些匹配项,该怎么办。

示例设置:鉴于

authors = Author.objects.filter(interests__in=['python','ruby'])
# [<Author: James>, <Author: Eugene>]
Run Code Online (Sandbox Code Playgroud)

这是我为正常情况所做的查询。它将返回包含 James 或 Eugene 或两者的所有书籍:

books = Book.objects.filter(authors__in=authors)
# [<Book: Book by James, Jack>, <Book: Book by Eugene>]
Run Code Online (Sandbox Code Playgroud)

但目前如果我想找到一本由 James 和 Eugene 写的书,我将不得不循环。

books = Book.objects
for author in authors:
    books = books.filter(authors=author)
# books [<Book: Book by James, Eugene>]
Run Code Online (Sandbox Code Playgroud)

是否有一种优雅的方法可以直接对匹配两个给定值的 m2m 字段进行过滤。也许像

books = Book.objects.filter(authors__match=authors)
Run Code Online (Sandbox Code Playgroud)

python django

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

SICP无限流(第3.5.2节)

这是与SICP Book Chapter 3.5.2相关的问题.

我正在用其他编程语言实现流数据结构.而且我不确定我是否正确理解以下代码段.

(define (integers-starting-from n)
    (cons-stream n (integers-starting-from (+ n 1))))

(define integers (integers-starting-from 1))
Run Code Online (Sandbox Code Playgroud)

从我所理解的(integers-starting-from (+ n 1))将执行通过执行返回值的函数(cons-stream n (integers-starting-from (+ n 1)))).因为cons-streamis 的第二个形式参数(integers-starting-from (+ n 1)),并且因为它被包围( ),所以它将无限地一次又一次地执行该函数而不是延迟执行.

从我在执行这个片段之前看到的情况看来,即使是正在执行的流的秒元素,以下整数也会导致无限递归.

为什么这似乎适用于演讲期间所示的计划?

根据我的理解,它应该写成这样的东西:

(define (integers-starting-from n)
    (cons-stream n (lambda() (integers-starting-from (+ n 1)))))

(define integers (integers-starting-from 1))
Run Code Online (Sandbox Code Playgroud)

这是否意味着该方案有一些延迟执行的魔法(integers-starting-from (+ n 1))

先感谢您

lisp scheme stream sicp

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

Django-Rest-Framework,使用HyperlinkedModelSerializer时,按ID更新外键

此问题是基于Django-Rest-Framework更新外键BY Id得出的.

我有一个类似的问题.我爱HyperlinkedModelSerializer.我可以从我的网络浏览器(例如Chrome,FF等)浏览API的所有链接,但是当我尝试使用API​​时,我在客户端应用程序中有很多工作要做.我对GET请求没有任何问题.在POST使用ForeignKey更新模型时的请求中,我需要在向服务器发出POST请求之前从客户端应用程序(例如AngularJS,Android等)构造URL.我知道ModelSerializer哪个从客户端应用程序解决了问题,但它无法从Web浏览器导航.

我不确定在设计可浏览的REST API时有什么好方法.我不确定大多数人如何解决这个问题,当他们想要创建一个可浏览的REST API时,他们不希望在制作之前通过解析URL-ID来增加客户端应用程序的复杂性POST请求.或者这可能只是我的问题,没有身体遇到.

为什么不HyperlinkedModelSerializer这样做呢.

  • 根据GET请求返回URL中的所有ForeignKey .这样开发人员就可以从他们的Web浏览器中导航API.
  • 根据POST要求接受身份证.因此,开发人员只需传递ID,而不必从客户端应用程序构建完整的URL.

例:

c = Client()

data = {
    'user': '1',
    'industry': '1'
}

c.post('http://localhost:8000/favorite_industries/', json.dumps(data), 'application/json')

response = c.get('http://localhost:8000/favorite_industries/')
print(response.content)
# [{"id": 1, "user": "http://localhost:8000/users/1/", "industry": "http://localhost:8000/industries/1/"}]
Run Code Online (Sandbox Code Playgroud)

问题:

  • 目前的设计有HyperlinkedModelSerializer什么优势?

  • 我的建议可能有什么缺点?

  • 怎么做到呢?

django rest django-rest-framework

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

如果某些模块依赖于其他应用程序,如何制作可重用的 Django 应用程序?

组件应该是它自己的应用程序吗?。因此,我们将我们的应用程序分开。

现在,可重用性在 Django 中确实很重要。当应用程序中的每个模块不依赖于其他应用程序时,使我们的应用程序可重用是微不足道的。

但是,通过添加 来引用其他应用程序中的模型是很常见的ForeignKey('appname.MyModel')。它创建了 Django 应用程序与其他应用程序的硬依赖关系。

import另一个应用程序(即)也发生了同样的事情from appname import MyModel。它创建应用程序对另一个应用程序的依赖关系。

如果应用程序包含其他应用程序的这种依赖性,那么共享我们的应用程序似乎不可行(即不可重用)。

我必须做什么才能使依赖关系松散。并允许我共享我的应用程序,而无需在应用程序中对其他应用程序进行硬编码。

django

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

组件如何神奇地接收`dispatch`作为其第一个参数?

我很难理解dispatch突然出现的魔术论点作为示例中的表示组件的第一个参数containers/AddTodo.js.

let AddTodo = ({ dispatch }) => {
    /* Omitted */
}

AddTodo = connect()(AddTodo)
Run Code Online (Sandbox Code Playgroud)

到目前为止,我的理解是第一个AddTodo被认为是Presentation组件,后者是Container组件

在这种情况下,表示组件似乎dispatch作为第一个参数注入.不幸的是,在回顾之后我感到困惑,并意识到演示组件的其余部分并非如此.

const Todo = ({ onClick, completed, text }) => (
    /* Omitted */
)

Todo.propTypes = {
  onClick: PropTypes.func.isRequired,
  completed: PropTypes.bool.isRequired,
  text: PropTypes.string.isRequired
}
Run Code Online (Sandbox Code Playgroud)

dispatch参数如何出现在演示组件中?

reactjs redux react-redux

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

移动设备上的Bootstrap内联表单

我想为移动视口创建一个内联表单,以便搜索按钮位于输入旁边.但文件说

这仅适用于视口中至少为768像素宽的表单.

如何在不使用内联表单的情况下实现此结果?

手机屏幕

导航栏标头

导航栏标头

这是navbar-header片段:( .form-inline在表单中添加不会像提到的文档那样内联)

<div class="navbar-header">
  <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1">
    <span class="sr-only">Toggle navigation</span>
    <!-- icon-bar span omitted -->
  </button>
  <a class="navbar-brand" href="#">Brand</a>

  <div class="clearfix"></div>

  <form class="navbar-form navbar-left" role="search">
    <div class="form-group">
      <input type="text" class="form-control" placeholder="Search">
    </div>
    <button type="submit" class="btn btn-default">Submit</button>
  </form>
</div>
Run Code Online (Sandbox Code Playgroud)

mobile twitter-bootstrap twitter-bootstrap-3

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

Django QuerySet查询或过滤特定字段中的"奇数"和/或"偶数"值

# Example
from django.db import models

class ParkingLot(models.Model):
    lot_number = models.IntegerField()
    is_reserved = models.BooleanField()
Run Code Online (Sandbox Code Playgroud)

我对Odd xor Even感兴趣lot_number.在Django中过滤它的推荐方法是什么?

我在下面发布了一些答案.


挑战

有谁知道我们是否可以使用类似F('lot_number') % 2 == 0技术的直接比较?

python django django-queryset python-3.x

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

如何将父对象作为参数传递给子类的构造函数

在下面的代码中,我有几个问题要问:我无法将类的对象Address作为参数传递给其子类的构造函数EmployeeAddress.为什么这样 ?它给出了错误,如参数不匹配..没有参数传递....我想AddressEmployeeAddressshow方法中的类调用该对象.怎么做?

class Address {
    public String street;
    int pin;
    String city;

    Address(String street, int pin, String city) {
        this.street = street;
        this.pin = pin;
        this.city = city;
    }
}

class EmployeeAddress extends Address {
    int empid;
    public String empname;
    Address add;

    EmployeeAddress (int empid, String empname, Address add){
        this.empid = empid;
        this.empname = empname;
        this.add = add;
    }

    void show() {
        System.out.println("my name is " + empname + "and my empid …
Run Code Online (Sandbox Code Playgroud)

java inheritance constructor

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