私信  •  关注

Alex

Alex 最近创建的主题
Alex 最近回复了
3 年前
回复了 Alex 创建的主题 » 使用MySql/NodeJs处理登录系统错误用户名错误

不要忘记返回响应,否则功能将继续。

return res.status(401).render('login', {
  message: 'Email or Password is incorrect'
});
3 年前
回复了 Alex 创建的主题 » 如何在python中从json中提取多个值

不,不可能。为了实现这一点,json需要嵌套,以便impactLevel位于title内,severityLevel位于impactLevel内。

我建议

x = resp['problems'][0]
dataList.append([x['title'], x['impactLevel', x['severityLevel'])

除非你想 全部的 json的字段,在这种情况下,您可以执行以下操作:

dataList.append(list(resp['problems'][0].values()))

Python和Java之间的一个基本区别是Python有一个 Global Interpreter Lock . 这使得用与Java类似的方式实现低层线程有点困难。

Multiprocessing

Ray是一个完全分布式的系统,因此它可以帮助跨单个机器上的核心或整个集群并行/分发python代码。对于雷,你可以用 Parallel Iterator 而不是一个列表,将你的数据集 actor . 它可能看起来像:

dataset_iter = from_items(dataset)
dataset_iter.for_each(lambda x: ray.get(dataset_dict.increment.remote(x)))
# This line starts the processing
list(dataset_iter.gather_async())

dataset_dict 看起来像

import collections
@ray.remote
class Counter:
 def __init__(self):
  self.counter = collections.Counter()

 def increment(self, key):
  self.counter[key] += 1

dataset_dict = Counter.remote()
5 年前
回复了 Alex 创建的主题 » Localhost python多变量赋值

documentation

套接字。接受()

接受连接。套接字必须绑定到地址并侦听连接。返回值是 (conn,address)其中conn是可用于发送和接收连接数据的新套接字对象,address是绑定到连接另一端套接字的地址。

因此,socket.accept()返回 一对

clientsocket, address = s.accept() 

同时分配两个变量。就像

temporary = s.accept()
clientsocket = temporary[0]
address = temporary[1]

但更有效率和可读性。但是,当你这样做的时候

clientsocket = s.accept()
address = s.accept()

关于第二个问题-再次阅读文档:

接受连接。套接字必须绑定到地址并侦听连接。返回值是一对(conn,address),其中conn是 可用于发送和接收连接上的数据,而address是绑定到连接另一端的套接字的地址。

原始套接字表示一个对象,该对象绑定到计算机上的某个端口以接受传入通信。当连接请求到达时 它将代表新创建的通信通道。原始套接字仍然可以用于接受更多连接。所以socket.accept()返回的连接对象和原始socket本身是不同的对象。

5 年前
回复了 Alex 创建的主题 » Python:对列表中的输入进行验证

代码的最小修改:

my_list = []

print("Enter q once done")

while True:
    try:
        s = input()
        if s == 'q':
            break
        my_list.append(int(s))
    except:
        print("Give integer values only")

print(my_list)

此代码有一个问题,即它无法识别输入结束/键盘中断。在stdin中还有一些输入时,最好从stdin中读取行:

import sys
my_list = []

print("Enter q once done")

for line in sys.stdin:
    if line == 'q\n':
        break
    try:
        my_list.append(int(line))
    except ValueError:
        print("Give integer values only")

print(my_list)
5 年前
回复了 Alex 创建的主题 » 如何对python中的字符串数字列表进行排序?

试试这个:

list = ['1008', '1033', '1080', '3107', '3589', '574', '703', '704', '712', '731', '810', '857', '862', '909', '927', '980']

for i in range(0, len(list)): 
    list[i] = int(list[i])

list.sort(reverse = True) 
print(list)

'''
6 年前
回复了 Alex 创建的主题 » 如何在Django中使用ajax和jquery执行PUT请求?

403是由CSRF异常引起的。

尽管如此,如果你想 PUT 请求应该相当简单:

  1. 你在发送一个 $.ajax 方法请求 投入
$.ajax({
    url: '',
    method: 'PUT'
})
  1. 投入 在基于函数的视图中进行请求,但必须确保用 csrf_exempt 装饰工:
 path('your-url/', csrf_exempt(modify_item), name='modify-item-url')

我强烈建议你调查一下 Django's CBV

6 年前
回复了 Alex 创建的主题 » django allauth如果未通过身份验证,则使用不同的布局

不管是不是,程序都是一样的。 在您的视图中,您可以检查用户是否经过身份验证

def my_view(request):   
  if request.user.is_authenticated: 
      return render(request, 'myapp/index.html' {})
  else: 
      return render(request, 'myapp/logged_in.html',{})

不过,最好有不同的类别:

from django.contrib.auth.decorators import login_required

def my_view(request): 
   if not request.user.is_authenticated: 
       return render(request, 'myapp/index.html' {})
   else: 
       return my_view_auth(request)

@login_required
def my_view_auth(request):
   return render(request, 'myapp/logged_in.html',{})
6 年前
回复了 Alex 创建的主题 » 如何在python中实例化类的实例?

正如@daniel roseman所指出的,我在player.py中有一个“import main”,python显然不喜欢这个,删除这个和任何相关的代码就解决了这个问题!

7 年前
回复了 Alex 创建的主题 » 在python3中如何将单词向后翻转?在这种情况下[副本]

这是我的方式:

def reverse_string(string):
    character_list = []
    for char in string:
        character_list.append(char)
    reversed_string = ""
    for char in reversed(character_list):
        reversed_string += char
    return reversed_string
7 年前
回复了 Alex 创建的主题 » 如何遍历MongoDB中的嵌套文档?

冷熔解液

我在代码中为您添加了注释。

<cfscript>

    docFromDB = '{
        "product123_types": {
            "type_1": {
                "settings": {
                    "name": "something",
                    "success": "600,400,500,800"
                }
            }
        },
        "product345_types": {
            "type_1": {
                "settings": {
                    "name": "something",
                    "success": "500,400"
                }
            },
            "type_2": {
                "settings": {
                    "name": "another one",
                    "success": "500,800,700"
                }
            }
        }
    }'; // assuming you are fetching the JSON as string from the database

    // deserialize JSON string from database
    docFromDB = deserializeJSON(docFromDB);

    // iterate over each entry in the JSON
    for (key in docFromDB) {

        // skip all keys that do not match our pattern "productN_types"
        if (!reFind("^product[0-9]+_types$", key)) {
            continue;
        }

        // alias to reference the "productN_types" node
        productNode = docFromDB[key];

        // iterate over each entry in the "productN_types" node
        for (key in productNode) {

            // skip all keys that do not match our pattern "type_N"
            if (!reFind("^type_[0-9]+$", key)) {
                break;
            }

            // alias to reference the "type_N" node in the "productN_types" node
            typeNode = productNode[key];

            // skip node if there is no "settings" key in it
            if (!structKeyExists(typeNode, "settings")) {
                break;
            }

            // alias to reference the "settings" node in the "type_N" node of the "productN_types" node
            settingsNode = typeNode["settings"];

            // skip node if there is no "success" key in it
            if (!structKeyExists(settingsNode, "success")) {
                break;
            }

            // success values as "list" (comma separated)
            successValueList = settingsNode["success"];

            // success values as "array"
            successValueArray = listToArray(successValueList); // exactly what String.split(',') in JS does

            // iterate over each success value (we are using "i" to reference the entry later)
            i = 1;
            for (successValue in successValueArray) {

                // do your actual lookup, I'm just mocking something here
                if (successValue == "400") {

                    // we are using the current index "i" to overwrite the array value,
                    // because "successValue" is just a flat copy here
                    successValueArray[i] = "fourhundred";
                }

                i++;
            }

            // write back your modified success values,
            // "settingsNode" is a reference, so we can simply overwrite it
            settingsNode["success"] = arrayToList(successValueArray); // exactly what String.join(',') in JS does
        }
    }

    // your result
    writeDump(docFromDB);

</cfscript>
11 年前
回复了 Alex 创建的主题 » mysql-错误1215:无法添加外键约束[重复]

我在尝试添加FK时遇到了同样的错误。在我的例子中,问题是由fk表的pk引起的,该pk被标记为unsigned。

7 年前
回复了 Alex 创建的主题 » 是否可以在水蟒环境中使用自定义构建CPython?

我可以通过只替换我所在的python dll来解决我的问题,而conda环境刚刚处理过它。

7 年前
回复了 Alex 创建的主题 » 如何将查询从MySQL传递到Laravel?
  1. 既然你有 $bird = DB::table('employe') 查询生成器已经知道要选择什么表 FROM 所以你不需要 FROM employe ->select('employe.*')

  2. TIMESTAMPDIFF(YEAR,birthdate,CURDATE()) AS age 你的询问与此无关 WHERE 条款。我们需要把文件移到 SELECT 查询的节。

    $bird = DB::table('employe')
        ->select(DB::raw('*, TIMESTAMPDIFF(YEAR,birthdate,CURDATE()) AS age') 
        ->whereraw('MONTH(birthdate)=MONTH(NOW())')
        ->get();