小编Ber*_*ala的帖子

将json.dumps中的utf-8文本保存为UTF8,而不是\ u转义序列

示例代码:

>>> import json
>>> json_string = json.dumps("??? ????")
>>> print json_string
"\u05d1\u05e8\u05d9 \u05e6\u05e7\u05dc\u05d4"
Run Code Online (Sandbox Code Playgroud)

问题是:它不是人类可读的.我(智能)用户想要使用JSON转储验证甚至编辑文本文件.(我宁愿不使用XML)

有没有办法将对象序列化为utf-8 json字符串(而不是\ uXXXX)?

这没有帮助:

>>> import json
>>> json_string = json.dumps("??? ????")
>>> print json_string
"\u05d1\u05e8\u05d9 \u05e6\u05e7\u05dc\u05d4"
Run Code Online (Sandbox Code Playgroud)

工作,但如果任何子对象是python-unicode而不是utf-8,它将转储垃圾:

>>> import json
>>> json_string = json.dumps("??? ????")
>>> print json_string
"\u05d1\u05e8\u05d9 \u05e6\u05e7\u05dc\u05d4"
Run Code Online (Sandbox Code Playgroud)

python unicode json escaping utf-8

394
推荐指数
11
解决办法
29万
查看次数

在pycharm中,如何返回上一个位置

我试过这些答案,但没有发生任何事情:

在IntelliJ Idea中跳转到上一个视图位置(向后/向前导航)的键盘快捷键

例如:

  1. 我正在导航到一个功能体,
  2. 把光标放在函数调用上,
  3. 单击F12("转到定义")
  4. 从新位置(函数体),我该如何返回函数调用?

我试过这些,但他们没有做任何事情:

  • CTRL移向左
  • ctrl-shift-F2 < - 这是我的默认映射
  • ALT移向左
  • CTRL移退格
  • 不要在linux上尝试:ctrl-alt-backspace

或者可能F12("转到def")不够"足够强"来触发位置变化事件?

ide keyboard-shortcuts pycharm

79
推荐指数
10
解决办法
3万
查看次数

在运行时在python中检索变量的名称?

有没有办法在运行时知道变量的名称(来自代码)?或编译时遗忘的var名称(字节代码与否)?

例如

>>>  vari = 15
>>>  print vari.~~name~~()
'vari'

注意:我说的是普通的数据类型变量(int,str,list ...)

python

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

如何从相机(或网络摄像头)捕获python中的视频(和音频)

我正在寻找一个解决方案,无论是在Linux还是在Windows中,都可以让我这样做

  • 同时从我的网络摄像头和麦克风录制视频(+音频).
  • 将它保存为file.AVI(或mpg或其他)
  • 在录制时在屏幕上显示视频

在我的情况下,压缩不是问题,我实际上更喜欢捕获RAW并在以后压缩它.

到目前为止,我已经用VB中的ActiveX组件完成了它,它处理了所有事情,我想用python进行(VB解决方案不稳定,不可靠).

到目前为止,我已经看到仅捕获VIDEO的代码或单个帧...

我到目前为止看到了

  • OpenCV - 在那里找不到音频捕获
  • PyGame - 没有同步音频捕获(AFAIK)
  • VideoCapture - 仅提供单帧.
  • SimpleCV - 没有音频
  • VLC - 将VideoLAN程序绑定到wxPthon - 希望它能做到(仍在调查此选项)
  • kivy - 刚刚听说过它,没有设法让它在Windows SO FAR下工作.

问题是 - 是否有用于python的视频和音频捕获库?

或者 - 如果有其他选择,还有什么?

python video-capture

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

NLTK/pyNLTK可以"按语言"(即非英语),以及如何工作?

如何告诉NLTK以特定语言处理文本?

有一段时间我会编写一个专门的NLP例程,在非英语(但仍然是欧洲的)欧洲文本域上进行POS标记,标记等操作.

这个问题似乎只涉及不同的语料库,而不是代码/设置的变化: 德语中的POS标记

或者,是否有任何专门用于python的希伯来语/西班牙语/波兰语NLP模块?

python nlp nltk

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

如何使用python挂钩窗口中的事件/消息

简而言之:

我想拦截我的笔记本电脑上的暂停/待机消息,但我的程序没有收到所有相关消息.

背景:

在Windows xp/2k上有一个ms-excel中的错误,如果在网络/ USB驱动器上打开文件,则会阻止系统挂起.

我正在尝试以编程方式解决它(我的工具箱包括python,vb6或命令行工具).

我对Windows仪器一无所知:-)

我有一个sysinternals实用程序,无论如何暂停系统.我想把它挂钩到封闭式活动!

长:

笔记本电脑盖关闭(fujitsu u810)启动待机程序[如何?]

然后系统发送每个人WM_POWERBROADCAST:PBT_APMQUERYSUSPEND(我可以使用它跟踪它们SPYXX.EXE)

每个程序回答"True",直到excel回答"false",整个​​过程停止.

我的问题:

1)我的python程序既没有捕获pbm_apmquerysuspend,也没有捕获PBT_APMQUERYSTANDBYFAILED,也没有捕获PBT_APMQUERYSUSPENDFAILED:`...

query = "SELECT * FROM Win32_PowerManagementEvent"

power_watcher = wmi.ExecNotificationQuery ( query )

power_event = power_watcher.NextEvent ()
Run Code Online (Sandbox Code Playgroud)

`如果最终发生备用,它只接收PBT_APMSUSPEND.

为什么不 - 我该如何拦截呢?

2)是否有其他方法可以拦截备用流程?

在一个完美的世界里,我会设置lid-close事件来运行我选择的命令.在完美的世界中,盖子盖是一个有记录的事件.

谢谢你们 :-)

python windows wmi power-management

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

用selenium和firefox保存图像

我正在尝试使用selenium服务器和python客户端从网站保存图像.我知道图像的URL,但是无法找到保存它的代码,无论是文档本身还是嵌入当前浏览器会话.

到目前为止我找到的解决方法是保存页面的截图(有2种硒方法可以做到这一点),但我想要原始图像.

我不介意摆弄点击菜单选项等,但我找不到如何.

谢谢

python selenium

9
推荐指数
2
解决办法
9476
查看次数

python中的布尔文本搜索

我正在寻找一个现有的模块,它使我能够编写基本的布尔查询来匹配和搜索文本,而无需编写自己的解析器等.

例如,

president AND (ronald OR (george NOT bush))
Run Code Online (Sandbox Code Playgroud)

将与"总统罗纳德·拉根""总统罗纳德·拉根和布什"相提并论"最大布什不是总统"

但是"乔治·布什总统"是假的"我不知道如何拼写罗纳德·拉根"

(到目前为止,我发现Booleano,这似乎有点矫枉过正,但可以完成任务.但是他们的小组是不活跃的,我无法从文档中弄清楚该怎么做.)

谢谢

编辑:确切的样式或语法并不重要.我的目标是为非技术用户提供搜索某些文本而不是关键字搜索的能力.

python full-text-search boolean

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

sqlAlchemy,具体继承,但父类有foreignKey

我有3个班:

  • 用户
  • 员工< - 数据库中不需要
  • 经理

Manager继承自Employee.用户表是相关的继承.

到现在为止还挺好:

class User(Base):
    __tablename__ = 'user'
    id = Column(Integer, primary_key=True)
    email = Column(String(255))

class Employee(AbstractConcreteBase, Base):
    name = Column(String(30))

class Manager(Employee):
    __tablename__ = 'manager'
    employee_id = Column(Integer, primary_key=True)
    dept = Column(String(30))
    __mapper_args__ = {'polymorphic_identity':'manager', 'concrete':True}
Run Code Online (Sandbox Code Playgroud)

它创建了User和Manager,这就是我想要的.

但,

如果我们在父类中引入ForeignKey,上面会中断:

class Employee(AbstractConcreteBase, Base):
    name = Column(String(30))
    user_id = Column(Integer, ForeignKey('user.id'))        
Run Code Online (Sandbox Code Playgroud)

错误是:

sqlalchemy.exc.InvalidRequestError:

Columns with foreign keys to other columns must be declared as @declared_attr callables on declarative mixin classes.
Run Code Online (Sandbox Code Playgroud)

到目前为止,我不理解mixin docs(链接)

在基类中允许外键(在本例中为Employee)需要什么?

python sqlalchemy

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

MySQLdb是否缓存SELECT结果?

我正在循环中运行SELECT查询.

偶尔,数据库表会更新(由另一个程序).

第一个SELECT检索正确的数据,但循环中的其他调用返回第一个值.

如何检索最新数据?

到目前为止我找到的唯一解决方法是在每次迭代时重新连接到数据库!在我的例子中,取消注释#1#和#2#的注释.仅取消注释#2#是不够的(即重新创建游标),结果仍然被缓存.

这是一个给出错误的工作示例.

import MySQLdb
from time import sleep

class DB:
    def __init__(self):
        self.connection = MySQLdb.connect(mysql_host, mysql_user, mysql_pass, mysql_db)
        self.cursor = self.connection.cursor()

    def get(self):
            sql = ''' SELECT id, message FROM mps_messages
                      WHERE topic=%s ORDER BY id LIMIT 1  '''
            #1# self.connect()
            #2# self.cursor = self.connection.cursor()
            self.cursor.execute(sql, ("topic",) )
            rec = self.cursor.fetchone()
            print rec

    def loop(self):
        while True:
            self.get()
            sleep(4)

db=DB()
db.loop()
Run Code Online (Sandbox Code Playgroud)
  • 操作系统:ubuntu,
  • python:2.7.4
  • mysqldb:1.2.3
  • mysql:5.5.34

python mysql-python

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