小编Dan*_*iel的帖子

渠道API存在不会触发

我正在尝试使用Channel API中的Presence来处理断开/连接状态.

这是我的一些代码.

的app.yaml

handlers:
- url: /(.*\.(gif|png|jpg|ico|js|css))
  static_files: \1
  upload: (.*\.(gif|png|jpg|ico|js|css))

- url: .*
  script: main.py

inbound_services:
- channel_presence
Run Code Online (Sandbox Code Playgroud)

main.py

class onConnect(webapp.RequestHandler):
  def post(self):
    for user in users:
      users = User.all().fetch(1000)
      client = client_id = self.request.get('from')
      channel.send_message(user.channel,' connected');

class onDisconnect(webapp.RequestHandler):
  def post(self):
    Mainpage()
    for user in users:
      users = User.all().fetch(1000)
      client = client_id = self.request.get('from')
      channel.send_message(user.channel, ' disconnected');

application = webapp.WSGIApplication(
                                     [('/', MainPage),
                                     ('/_ah/channel/connected/',onConnect),
                                     ('/_ah/channel/disconnected/',onDisconnect),
                                     ('/chat',handleChat)],
                                     debug=True)
Run Code Online (Sandbox Code Playgroud)

使用Javascript

<script>
        openChannel = function(){
            var token = '{{ token }}';
            var …
Run Code Online (Sandbox Code Playgroud)

python google-app-engine channel-api

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

postgres jsonb_set多个密钥更新

我有一个带有jsonb列的DB表.

number  | data
    1   | {"name": "firstName", "city": "toronto", "province": "ON"}
Run Code Online (Sandbox Code Playgroud)

我需要一种更新数据列的方法.所以我的输出应该是这样的:

{"name": "firstName", "city": "ottawa", "province": "ON", "phone": "phonenum", "prefix": "prefixedName"}
Run Code Online (Sandbox Code Playgroud)

用json_set可以吗?我添加了如下查询:

update table_name set data = jsonb_set(data, '{city}', '"ottawa"') where number = 1;
Run Code Online (Sandbox Code Playgroud)

但是,我需要一种方法来添加新的键值(如果它不存在)并更新键值(如果它存在).是否可以在单个查询中实现此目的?

postgresql

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

使用Flask服务器的面向对象的Python?

我正在使用Flask将一些数据处理代码暴露为Web服务.我想要一些我的Flask函数可以访问的类变量.

让我带你走过我被困的地方:

from flask import Flask
app = Flask(__name__)

class MyServer:
  def __init__(self):
    globalData = json.load(filename)

  @app.route('/getSomeData')
  def getSomeData():
    return random.choice(globalData) #select some random data to return

if __name__ == "__main__":
  app.run(host='0.0.0.0')
Run Code Online (Sandbox Code Playgroud)

当我跑到getSomeData()Flask外面时,它工作正常.但是,当我用Flask运行时,我得到了500 internal server error.这里没有魔法,Flask不知道它应该初始化一个MyServer对象.如何将MyServer实例提供给app.run()命令?

可以承认失败并投入globalData数据库.但是,还有另外一种方法吗?

python flask

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

将mkl_set_num_threads与numpy一起使用

我试图mkl_set_num_threads像这样设置numpy计算的线程数

import numpy
import ctypes
mkl_rt = ctypes.CDLL('libmkl_rt.so')
mkl_rt.mkl_set_num_threads(4)
Run Code Online (Sandbox Code Playgroud)

但我不断收到分段错误:

Program received signal SIGSEGV, Segmentation fault.
0x00002aaab34d7561 in mkl_set_num_threads__ () from /../libmkl_intel_lp64.so
Run Code Online (Sandbox Code Playgroud)

获取线程数是没问题的:

print mkl_rt.mkl_get_max_threads()
Run Code Online (Sandbox Code Playgroud)

如何让我的代码工作?或者是否有其他方法可以在运行时设置线程数?

python numpy intel-mkl

14
推荐指数
2
解决办法
4530
查看次数

在Python中对整数列表进行排序

我是一名初学者程序员,正在尝试练习。我想对整数列表进行排序,但是每次我运行代码时,列表都不会排序。我用sorted()或.sort()以几种不同的方式尝试过,但是似乎没有任何帮助。

def main():

    _list1_ = []
    _list2_ = []

    print("Enter random numbers and enter Q to quit: ")
    userInput1 = input("")
    while userInput1.upper() != "Q":
        _list1_.append(int(userInput1))
        userInput1 = input("")

    print("Enter random numbers and enter Q to quit:")
    userInput2 = input("")
    while userInput2.upper() != "Q":
        _list2_.append(int(userInput2))
        userInput2 = input("")

    sorted(_list1_)
    sorted(_list2_)

    print(_list1_)

main()
Run Code Online (Sandbox Code Playgroud)

谢谢!

python sorting

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

Python程序在循环之后结束

我试图用python登录系统.要登录,您必须先注册.注册后,将其存储到文本文件中,密码为base64.然后,如果您登录它,则要求输入密码被编码到base64中的用户名和密码,并根据文本文档进行检查.但是当它搜索密码时没有任何反应.它只是结束程序并转到shell.没有回溯错误或任何事情.好像其余的代码是不可见的.代码如下:

try:
    import linecache
    import base64
    import tkinter
    import time
    choice = ""
    def choose():
        choice = input("Would you liek to register or login: ")
        choice = choice.upper()
        if choice == "REGISTER":
            f = open("h.txt", "a")
            f.write("\n")
            print("Please enetr a username")
            username = input(">>> ")
            print("Please enter a password")
            passw = input(">>> ")
            print("\n"*100)
            passw_conf = input("Please enter your password again\n>>> ")
            print("\n"*100)
            if passw == passw_conf:
                print("Thank you for Registering")
                f.write(username + "\n")
                passw = base64.b64encode(passw.encode('utf-8'))
                passw = str(passw)[2:-1] …
Run Code Online (Sandbox Code Playgroud)

python python-3.x

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

我如何"循环"这个其他声明?

我对Python很陌生,我在创建这个'测验'时遇到了麻烦.

answer_1_choices = {
    'A' : 'A: A list is a datatype that stores a sequence of items with individual indexes that are mutable.',
    'B' : 'B: A list is a datatype that stores a sequence of items with individual indexes that are immutable.',
    'C' : 'C: A list is a datatype that stores a sequence of items assigned to individual keys that are immutable.'
    }
Number_One = '1. What is a list?'

def answer():
    x = input()
    if x …
Run Code Online (Sandbox Code Playgroud)

python python-3.x

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

在python中同时将多个正则表达式应用于文本

假设我有一个包含'.'和的文本',',有时它们都跟着空格.我需要编写一个正则表达式,从整个文本中删除[ '.'和空格]或[ ','和空格].我有如下所述的正则表达式: -

text = re.sub('[.]+[ ]+', " ", text)
text = re.sub('[,]+[ ]+', " ", text)
Run Code Online (Sandbox Code Playgroud)

在这里,我将多个模式应用于字符串多次.有没有一种有效的方法可以一次性完成这项工作?此外,输出存储在同一个变量中.这是一种有效的方式,还是我们在这种情况下创建了一个副本.请告诉我.

谢谢.

python regex

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

Python"Def"语法无效

我是python的新手,我只学习了大约一个星期.我正在写一些脚本,我正在使用两个def语句,它会说两个defs的第一个def的语法无效

这是代码:

from tkinter import *
import tkinter.messagebox

master = Tk()
def continue():
    answer = tkinter.messagebox.askquestion('Error 408!', 'Something went wrong here. Click terminate to quit the app')
    if answer == 'Yes':
        quit()

dlabel = Label(text='Pick a Button').pack()
master.title('Uselessapp')
master.geometry('200x200')

button = Button(master, text="Play Game", command=continue)
button.pack()

mlabel = Label(text='--------').pack()

def quitapp():
    quit()

button = Button(master, text="Quit", command=quitapp)

button.pack()

mainloop()
Run Code Online (Sandbox Code Playgroud)

请帮忙!

python

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

如何在python中将字符串转换为日期时间?

我想在python中将此字符串" Fri, 03 Jun 2016 08:01:26 GMT" 转换为datetime.

提前致谢

python python-2.7 python-datetime

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

这两个return语句有什么区别?

这是来自codesignal的问题.我尝试了下面的第二段代码,它没有通过所有的测试.但第一个片段做了.为什么?这两个片段之间的区别是什么?

上下文:给定一个整数数组,找到具有最大乘积并返回该乘积的相邻元素对.

def adjacentElementsProduct(inputArray):
    return max([inputArray[i]*inputArray[i+1] for i in range(len(inputArray)-1)])


def adjacentElementsProduct(inputArray):
    for i in range(len(inputArray)-1):
        return max([inputArray[i]*inputArray[i+1]])
Run Code Online (Sandbox Code Playgroud)

python arrays max

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