小编Sma*_*pha的帖子

如何在 Flutter 中的另一个提供者中使用一个提供者

我想创建一个authentication service具有不同权限和功能(例如消息)的应用程序,具体取决于用户角色。

所以我Provider为用户和登录管理创建了一个,为用户可以看到的消息创建了另一个。

现在,我想在用户登录时获取消息(一次)。在 中Widgets,我可以通过访问提供程序Provider.of<T>(context),我想这是一种Singleton. 但是我如何从另一个类(在这种情况下是另一个提供者)访问它?

dart flutter flutter-layout

18
推荐指数
3
解决办法
8739
查看次数

是否有根据类型提示检查类型的 python linter?

我正在寻找一个 Python linter,它可以根据代码中的类型提示检查类型使用情况。
目的是运行单一检查以验证样式、逻辑和类型错误。
我需要在 CI 服务器上运行它,并在开发过程中作为文件观察者。
例如,我需要此代码来输出错误以传递错误的类型参数 -

def double(x: int):
    return x * 2


result = double('hello')
Run Code Online (Sandbox Code Playgroud)

我检查了 PyLint 和 flake8 的文档,但找不到任何对类型检查的支持。
使用 PyLint,我还验证了检查上述代码时没有错误。

python static-analysis type-hinting python-3.x

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

Netty-无法访问类jdk.internal.misc.Unsafe

当我将Java从8升级到11时,我从Netty收到有关的错误"jdk.internal.misc.Unsafe",详细信息如下:

我知道这是一条调试级别消息,并且可以更改日志级别以忽略它。但是我不确定是否会忽略其他问题,例如性能。有谁知道最好的解决方案?

java.lang.IllegalAccessException: class io.netty.util.internal.PlatformDependent0$6 cannot access class jdk.internal.misc.Unsafe (in module java.base) because module java.base does not export jdk.internal.misc to unnamed module @84b8f0f
    at jdk.internal.reflect.Reflection.newIllegalAccessException(Reflection.java:361) ~[?:?]
    at java.lang.reflect.AccessibleObject.checkAccess(AccessibleObject.java:591) ~[?:?]
    at java.lang.reflect.Method.invoke(Method.java:558) ~[?:?]
    at io.netty.util.internal.PlatformDependent0$6.run(PlatformDependent0.java:334) ~[netty-all-4.1.36.Final.jar:4.1.36.Final]
    at java.security.AccessController.doPrivileged(Native Method) ~[?:?]
    at io.netty.util.internal.PlatformDependent0.<clinit>(PlatformDependent0.java:325) ~[netty-all-4.1.36.Final.jar:4.1.36.Final]
    at io.netty.util.internal.PlatformDependent.isAndroid(PlatformDependent.java:214) ~[netty-all-4.1.36.Final.jar:4.1.36.Final]
    at io.netty.util.internal.PlatformDependent.<clinit>(PlatformDependent.java:82) ~[netty-all-4.1.36.Final.jar:4.1.36.Final]
    at io.netty.buffer.UnpooledByteBufAllocator.<clinit>(UnpooledByteBufAllocator.java:37) ~[netty-all-4.1.36.Final.jar:4.1.36.Final]
    at io.netty.buffer.Unpooled.<clinit>(Unpooled.java:73) ~[netty-all-4.1.36.Final.jar:4.1.36.Final]
    at wedo.stream3.framework.base.connector.supplier.DelimiterDecoderSupplier.getDelimiter(DelimiterDecoderSupplier.java:41) ~[classes/:?]
    at wedo.stream3.framework.base.connector.supplier.DelimiterDecoderSupplier.<init>(DelimiterDecoderSupplier.java:26) ~[classes/:?]
    at wedo.stream3.framework.base.connector.supplier.DelimiterDecoderSupplier.<init>(DelimiterDecoderSupplier.java:20) ~[classes/:?]
    at wedo.stream3.framework.base.connector.supplier.CommonChannelHandlerSupplier.<init>(CommonChannelHandlerSupplier.java:37) ~[classes/:?]
    at wedo.stream3.framework.base.connector.supplier.CommonChannelHandlerSupplier.<init>(CommonChannelHandlerSupplier.java:25) ~[classes/:?]
    at wedo.stream3.framework.base.connector.TcpClientConnector.start(TcpClientConnector.java:39) ~[classes/:?]
    at wedo.stream3.framework.bootstrap.FrameworkLauncher.lambda$start$0(FrameworkLauncher.java:61) ~[classes/:?]
    at java.util.stream.ForEachOps$ForEachOp$OfRef.accept(ForEachOps.java:183) [?:?] …
Run Code Online (Sandbox Code Playgroud)

java netty java-11

6
推荐指数
3
解决办法
994
查看次数

PyMySQL 无法执行多个查询

使用最新版本的 PyMySQL(0.9.3) 我无法执行一个查询字符串,其中包含多个用分号 (;) 分隔的 SQL 语句

我的python版本是:Python 3.6.5

import pymysql # version 0.9.3
conn = {
    "host": "mysql_server_hostname",
    "password": "my_password",
    "port": <<port_no>>,
    "user": "my_username"
}

my_query_str = 'show databases;use random_existing_db;'
with pymysql.connect(**conn):
    cur.execute(query)
Run Code Online (Sandbox Code Playgroud)

返回错误:(1064,'在单个查询中检测到多个语句)

尝试使用 PyMySQL-0.7.11 运行相同的查询并且它有效

python python-3.x pymysql

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

AttributeError:模块“时间”在Python 3.8中没有属性“时钟”

我已经编写了生成公共和私有密钥的代码。它在Python 3.7上运行良好,但在Python 3.8中失败。我不知道在最新版本中它怎么会失败。为我提供一些解决方案。

这是代码:

from Crypto.PublicKey import RSA


def generate_keys():
    modulus_length = 1024
    key = RSA.generate(modulus_length)
    pub_key = key.publickey()
    private_key = key.exportKey()
    public_key = pub_key.exportKey()
    return private_key, public_key


a = generate_keys()
print(a)
Run Code Online (Sandbox Code Playgroud)

Python 3.8版本中的错误:

Traceback (most recent call last):
  File "temp.py", line 18, in <module>
    a = generate_keys()
  File "temp.py", line 8, in generate_keys
    key = RSA.generate(modulus_length)
  File "/home/paulsteven/.local/lib/python3.8/site-packages/Crypto/PublicKey/RSA.py", line 508, in generate
    obj = _RSA.generate_py(bits, rf, progress_func, e)    # TODO: Don't use legacy _RSA module
  File "/home/paulsteven/.local/lib/python3.8/site-packages/Crypto/PublicKey/_RSA.py", line 50, …
Run Code Online (Sandbox Code Playgroud)

python attributeerror pycrypto python-3.8

5
推荐指数
7
解决办法
2194
查看次数

获取 127.0.1.1 而不是 192.168.1.* ip ubuntu python

我是python的新手。我想获取系统的IP地址。我在局域网中连接。当我使用以下代码获取 ip 时,它显示 127.0.1.1 而不是 192.168.1.32。为什么它不显示 LAN ip。那么我怎样才能得到我的局域网 ip。每个教程仅以这种方式显示。我还通过连接移动热点进行了检查。尽管如此,它显示的是相同的。

import socket    
hostname = socket.gethostname()    
IPAddr = socket.gethostbyname(hostname)    
print("Your Computer Name is:" + hostname)    
print("Your Computer IP Address is:" + IPAddr)    
Run Code Online (Sandbox Code Playgroud)

输出:

Your Computer Name is:smackcoders
Your Computer IP Address is:127.0.1.1
Run Code Online (Sandbox Code Playgroud)

所需输出:

Your Computer Name is:smackcoders
Your Computer IP Address is:192.168.1.32
Run Code Online (Sandbox Code Playgroud)

python sockets python-3.x python-sockets

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

python pip 给出:“没有这样的选项:-r”

所以我刚刚安装了python3.7。我已经使用 python 2 很长时间了,但我需要 python 3 来处理特定的模块。

所以我尝试通过安装requirements.txtpy -m pip install -r requirements.txt但是当我这样做时,我收到以下错误:

Usage:
  D:\Python37-32\python.exe -m pip <command> [options]

no such option: -r
Run Code Online (Sandbox Code Playgroud)

我认为我的安装没有损坏,因为我在使用 python 2 ( python -m pip install -r requirements.txt) 时遇到了同样的错误

pip 也在我的路径中,但我使用它,py -m pip因为我的系统上安装了 python 版本 2 和 3,需要确保我使用正确的 pip 和正确的 python 版本

为什么我不能安装 requirements.txt 而我却收到了这个错误?

python pip python-3.x

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

Tensorflow 2 中的 tf.contrib.layers.fully_connected()?

我正在尝试在我的一个项目中使用 tf.contrib.layers.fully_connected(),它在 tensorflow 2.0 中已被弃用。是否有等效的功能,或者我应该在我的虚拟环境中为这个项目保留 tensorflow v1.x?

python python-3.x tensorflow tensorflow2.0

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

从服务器 python 向客户端发送连续数据

我正在编写一个程序,将数据从服务器连续发送到客户端。在这里,我使用时间戳作为示例,将其发送到连接的多个客户端。我已经使用多线程来支持多个客户端。我希望每 10 秒向客户端发送一次时间。但在我的代码中,客户端在收到第一个数据后停止。如何让客户端持续接收数据。我尝试在客户端添加 while 循环,但它无法实现。有什么建议请

这是示例代码:服务器端:

import socket
import os
from threading import Thread
import thread
import threading
import time
import datetime

def listener(client, address):
    print "Accepted connection from: ", address
    with clients_lock:
        clients.add(client)
    try:    
        while True:
            data = client.recv(1024)
            if not data:
                break
            else:
                print repr(data)
                with clients_lock:
                    for c in clients:
                        c.sendall(data)
    finally:
        with clients_lock:
            clients.remove(client)
            client.close()

clients = set()
clients_lock = threading.Lock()

host = socket.gethostname()
port = 10016

s = socket.socket()
s.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
s.bind((host,port))
s.listen(3)
th …
Run Code Online (Sandbox Code Playgroud)

python sockets multithreading python-3.x python-sockets

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

如何更改由 plt.hist() 描述的直方图的尺寸,因为 figsize 不是参数

我正在尝试使用 numpy 数组绘制带有系列的直方图。

n,bins,patch = plt.hist(ser,bins=10, color='green', alpha=0.8, label='Value', edgecolor='orange', linewidth=2)
plt.legend()
plt.ylabel('No of bags', size='x-large')
plt.xlabel('Money in US $', size= 'x-large')

Run Code Online (Sandbox Code Playgroud)

IT 运行良好,但尺寸很小。我尝试使用olt.hist(figsize=(8,8))但它按预期抛出错误。

如何增加直方图的大小?

python matplotlib histogram python-3.x pandas

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