小编ste*_*eha的帖子

使用python一次读取一个整数

如何从文件中读取int?我有一个大的(512MB)txt文件,其中包含整数数据:

0 0 0 10 5 0 0 140
0 20 6 0 9 5 0 0
Run Code Online (Sandbox Code Playgroud)

现在,如果我使用c = file.read(1),我一次只能得到一个字符,但我一次需要一个整数.喜欢:

c = 0
c = 10
c = 5
c = 140 and so on...
Run Code Online (Sandbox Code Playgroud)

任何伟大的心脏,请帮助.提前致谢.

python file-io python-2.7

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

递归 - Python,返回值问题

我意识到这可能听起来像一个愚蠢的问题,但我最后一次编程它是在汇编程序,所以我的想法可能是关闭的:

递归函数如下:

def fac(n):
    if n == 0:
        return 1
    else:
        return n * fac(n - 1)
Run Code Online (Sandbox Code Playgroud)

为什么当函数达到n == 0时它不返回1而是返回因子.我在思考类似于汇编程序的东西,当n == 0时:

mov eax, 1
ret
Run Code Online (Sandbox Code Playgroud)

为什么上面的代码工作,我想python在那个条件之前返回堆栈的最后一个值?

python recursion stack

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

在视图中获取JSON请求(使用Django)

我正在尝试设置视图以从API接收JSON通知.我正在试图弄清楚如何获取JSON数据,我现在以此为起点,看到请求正确接收:

def api_response(request):
    print request
    return HttpResponse('')
Run Code Online (Sandbox Code Playgroud)

我知道JSON对象在那里,因为print request它显示:

META:{'CONTENT_LENGTH': '178',
[Fri Sep 09 16:42:27 2011] [error]  'CONTENT_TYPE': 'application/json',
Run Code Online (Sandbox Code Playgroud)

但是,POST和GET QueryDicts都是空的.我如何设置一个视图来接收JSON对象,以便我可以处理它?谢谢.

python api django json

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

JUCE for Android入门

我需要开始构建一个使用JUCE库的Android应用程序.我正在阅读该网站,并试图解决问题.

我尝试在Ubuntu 11.04系统上安装JUCE,当我构建IntroJucer应用程序时,菜单无法正常工作(当我用鼠标点击但它们会消失时它们会闪烁).Android的JUCE应用程序可以在Mac OS X甚至Windows上构建吗?

如果您使用JUCE构建Android应用程序,请给我任何建议.

android juce

4
推荐指数
2
解决办法
3712
查看次数

访问Android UI Automator测试的资源

我正在使用Android上的UI Automator进行一组测试。我有它的工作,但我目前的测试是用很多字符串文字进行的。

当我刚开始尝试使事情正常工作时,字符串字面值还不错,但是今后它们会很不好。如果更改了应用程序,则字符串文字需要进行更改以匹配。同样,愚蠢的是我的测试必须完全重做才能测试其他语言的本地化版本。

该应用程序本身具有存储在资源中的所有字符串。每个字符串都有一个不变的标识符...这是一个示例:

<string name="more_options">More options</string>
Run Code Online (Sandbox Code Playgroud)

应用程序代码将始终使用名称more_options来查找字符串资源,而不是硬编码"More options"到代码中。

所以我想要的是导入所有字符串资源,将它们存储在某种map对象中,然后在我的UI Automator测试代码中使用类似的东西,m.get("more_options")而不是像"More options"现在那样使用文字字符串。

无论我做什么,我都希望它只是生成并推送到设备以运行测试的JAR文件的一部分。例如,我不想将XML字符串资源文件推送到设备并尝试在测试运行时读取它们。我想在构建JAR文件时内置数据。

我查看了通过构建应用程序生成的文件,并且类似的名称more_options都被设置为整数。这些必须是资源存储中的索引或指针,但是我不确定如何将该存储复制到我的UI Automator项目中并使其连接起来。在Android应用中,您使用Context对象访问资源,而UI Automator JAR文件没有Context

这必须是一个普遍的问题,人们必须已经解决了这个问题,但是我的Google搜索尚未找到有关人们如何解决此问题的任何讨论。

如果没有任何建议,我将编写一个Python脚本,该脚本导入XML文件,并编写一个Java文件,该Java文件具有构建所需地图的功能,然后从UI Automator测试程序中调用它。(无论如何,我有一个运行命令行工具序列的Python脚本来执行UI Automator测试……我不介意使它做更多的工作。)但是我认为应该有一个纯Java解决方案为此,可能涉及从应用程序的源目录中抓取已编译的文件。

java android localization android-uiautomator

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

如何使用Python将数据附加到包含换行符的文本文件?

我刚刚被要求提出一个脚本来查找具有特定文件名长度的文件.我决定第一次尝试使用Python来完成这项任务,因为我一直想学习它.

我有脚本来查找文件并将它们附加到文本文件,但它不会为每个新条目写一个换行符.有没有办法做到这一点,因为当前的输出几乎是不可读的?

python

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

关于为 Vexed 关卡编写求解器的建议

Vexed 是一款流行的益智游戏,有许多可用版本(其中一些是 GPL 免费软件)。非常适合小屏幕设备;有适用于 Android、iOS 等的版本。我在 PalmOS 平台上发现了它。

只是为了好玩,我想编写一个可以解决 Vexed 关卡的解算器。

Vexed 是一款方块滑动益智游戏。简而言之,规则如下:

0) 每个级别都是一个正方形网格,由不可逾越的边界界定。在任何关卡中都会有一些实心方块,这是无法通过的。有一些不同颜色的方块;这些可以放置在底部边框上、放置在实心方块上或放置在其他块(不同颜色)上。大多数关卡尺寸为 8x8 或更小。

1)您可以采取的唯一操作是将块向左或向右滑动。每经过一个方块的方格都算作一次移动。

2)有重力。如果在滑动一个块后,它不再停留在实心方块或另一个块上,它就会下落,直到它停留在另一个块、实心方块或底部边框上。请注意,您将无法再次举起它。

3)只要两个或多个相同颜色的块接触,它们就会消失。请注意,链条是可能的:如果支撑块消失,位于其上的块将会掉落,这可能导致更多相同颜色的块接触并因此消失。

4)目标是在最少的移动次数内使所有方块消失。每个级别都有一个“标准分数”,告诉您最少的移动次数。(在最初的 PalmOS 游戏中,“标准分数”不一定是最低的,但在我这些天玩的 Android 版本中,它是最低的。)

以下是 SourceForge 项目,其中包含该游戏 PalmOS 版本的源代码:

http://sourceforge.net/projects/vexed/

我是一名经验丰富的软件开发人员,但我还没有真正做过任何人工智能之类的工作(寻路、解决问题等),所以我正在寻求建议来指引我正确的方向。

目前,我可以看到两个基本策略可供我追求:

0) 只需编写一个强力求解器,可能用 C 语言来提高速度,它会遍历每个游戏的所有可能的解决方案,并返回所有解决方案的列表,首先是最好的解决方案。这是一个合理的方法,还是可能的移动总数会使这个过程太慢?我认为不存在大于 10x10 的关卡。

1)学习一些人工智能算法,并以巧妙的方式应用它们来解决问题,可能使用Python。

请注意,PalmOS Vexed 的源代码包含一个求解器。据作者介绍,“求解器使用 A* 和剪枝启发法来寻找解决方案。”

http://www.scottlu.com/Content/Vexed.html

因此,我可以采取的一种策略是研究 A* 算法,然后研究现有求解器的 C++ 代码,并尝试从中学习。

我将使用 Python 和 C 标签来标记它,但如果您认为我应该使用其他东西,请进行推销,我会考虑它!

这是“Variety 25 Pack”中某个关卡的 ASCII 艺术;48级,“黑暗领主”。我能够解决大多数关卡,但这一关让我很烦恼。这个关卡的标准分数是25步,但我还没有完全解决它!

__________
|## g####|
|## # b##|
|## # p##|
|#g   ###|
|bp   ###|
|p# p g  |
==========
Run Code Online (Sandbox Code Playgroud)

在这张图中,边框是下划线、竖线和等号字符。填充的方块是“#”。开放空间是空格字符。彩色块是“g”(绿色)、“b”(蓝色)和“p”(紫色)。 …

c python artificial-intelligence solver game-ai

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

如何找到根目录以便路径可以在多台计算机上运行?

我正在编写一个程序来设置用于存储数据的文件路径.格式如下

c://users/username/.../endingpath
Run Code Online (Sandbox Code Playgroud)

当我切换计算机时,用户名被更改.有没有一种方法或方法可以指定我正在使用的特定计算机的用户名是什么?或者是否有更好的方法使路径计算机独立?

我在Windows 7上运行Python 2.7

python windows path python-2.7

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

Python中的有用继承.接口的替代方案

嗨,据我所知,Python变量是无类型的.所以现在我想拥有一个基类

class baseClass:
 def x():
  print "yay"
Run Code Online (Sandbox Code Playgroud)

和两个子类

class sub1(baseClass):
 def x(): 
  print "sub1"

class sub2(baseClass):
 def x():
  print "sub2"
Run Code Online (Sandbox Code Playgroud)

在其他编程语言中,我可以像接口一样开发接口

baseClass c = new sub1()
Run Code Online (Sandbox Code Playgroud)

所以现在我可以使用c作为具有sub1功能的baseClass,也许在运行时我可以通过它来改变它

c = new sub2()
Run Code Online (Sandbox Code Playgroud)

这在python中也可能吗?

python inheritance interface

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

如何在一行中读取A列到B列的所有字符

是否有可能在Python中,给定10000行的文件,其中所有这些都具有以下结构:

1,2,xvfrt ert5a fsfs4 df f fdfd56,234

或类似的,读取整个字符串,然后在另一个字符串中存储从第7列到第17列的所有字符,包括空格,所以新字符串将是

"xvfrt ert5a"?

非常感谢

python text-processing

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

字符串包裹在b'...'中

import urllib.request

#name = input("What is your screenname? ");
name = "zezima"
page = urllib.request.urlopen('http://hiscore.runescape.com/index_lite.ws?player=' + name)
page = page.readlines()

skills = []
for line in page:
  skills += [line]



print(skills)
Run Code Online (Sandbox Code Playgroud)

输出:

[[b'478,2372,1224928266\n'], [b'458,99,59502162\n'], [b'262,99,56673986\n'], [b'1355,99,39565273\n'], [b'227,99,61315106\n'], [b'260,99,37119213\n'], [b'502,99,14155051\n'], [b'27,99,63829007\n'], [b'5,99,200000000\n'], [b'2084,99,22203776\n'], [b'60,99,113793712\n'], [b'567,99,27240251\n'], [b'26,99,117368919\n'], [b'259,99,18094553\n'], [b'172,99,17565654\n'], [b'727,99,15789879\n'], [b'8,99,57473883\n'], [b'1420,99,13592712\n'], [b'5,99,200000000\n'], [b'640,99,18641664\n'], [b'413,99,19465433\n'], [b'745,99,16113397\n'], [b'7540,99,13187561\n'], [b'708,99,13229510\n'], [b'6230,95,9007564\n'], [b'2724,1944\n'], [b'-1,-1\n'], [b'-1,-1\n'], [b'-1,-1\n'], [b'-1,-1\n']]
Run Code Online (Sandbox Code Playgroud)

我想知道为什么上面列表中的每个项目都在b它前面.

列表不应该是这样的吗?:

[['478,2372,1224928266\n'], ['458,99,59502162\n'], ['262,99,56673986\n']...]
Run Code Online (Sandbox Code Playgroud)

python python-3.x

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

在键/值对列表中查找值

我有2个清单

old_name_list = [a-1234, a-1235, a-1236]
new_name_list = [(a-1235, a-5321), (a-1236, a-6321), (a-1234, a-4321), ... ]
Run Code Online (Sandbox Code Playgroud)

我想以递归方式搜索old_name_list中的元素是否存在于new_name_list中,并返回与之关联的值,例如.old_name_list中的第一个元素返回a-4321,第二个元素返回a-5321,依此类推,直到old_name_list结束.

我尝试过以下内容并不起作用

for old_name, new_name in zip(old_name_list, new_name_list):
    if old_name in new_name[0]:
        print new_name[1]
Run Code Online (Sandbox Code Playgroud)

方法我做错了还是我必须对它做一些小改动?先感谢您.

python list

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

使用Python从HTML中提取文本字段?

什么是从这个HTML文件中提取数据并将其放入MySQL数据库的最佳方式,公司电话号码,公司名称和电子邮件主键为电话号码?

</tr><tr class="tableRowOdd">
                <td>"JSC company inc. 00" &lt;email@email.com&gt;</td>
                <td>1231231234</td>
            </tr><tr class="tableRowEven">
                <td>"JSC company inc. 01" &lt;email01@email.com&gt;</td>
                <td>234234234234234</td>
            </tr><tr class="tableRowOdd">
                <td>"JSC company inc. 02" &lt;email2@email.com&gt;</td>
                <td>32423234234</td>
            </tr><tr class="tableRowEven">
                <td>"JSC company inc. 03" &lt;email3@email.com&gt;</td>
                <td>23423424324</td>
            </tr><tr class="tableRowOdd">
                <td>"JSC company inc. 04" &lt;email4@email.com&gt;</td>
                <td>234234232324244</td>
            </tr>   <tr>
Run Code Online (Sandbox Code Playgroud)

python text

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