我正在尝试使用Keras设计一个优先考虑预测性能的神经网络,并且通过进一步减少每层的层数和节点数量,我无法获得足够高的精度.我注意到我的很大一部分重量实际上是零(> 95%).有没有办法修剪密集层以期减少预测时间?
我需要在Python 3的文件下载期间显示进度.我在Stackoverflow上看到了一些主题,但考虑到我在编程方面是一个菜鸟而没有人发布完整的例子,只是它的一小部分,或者我可以在Python 3上工作,没有一个对我有好处......
附加信息:
好的,所以我有这个:
from urllib.request import urlopen
import configparser
#checks for files which need to be downloaded
print(' Downloading...')
file = urlopen(file_url)
#progress bar here
output = open('downloaded_file.py','wb')
output.write(file.read())
output.close()
os.system('downloaded_file.py')
Run Code Online (Sandbox Code Playgroud)
脚本通过python命令行运行
我正在尝试使用asyncio来处理并发网络I/O. 在一个点上安排了大量的功能,这些功能在每个功能完成所需的时间上变化很大.然后,对于每个输出,在单独的过程中处理接收的数据.
处理数据的顺序是不相关的,因此,考虑到输出的潜在等待时间非常长,我希望await
无论将来如何完成而不是预定义的顺序.
def fetch(x):
sleep()
async def main():
futures = [loop.run_in_executor(None, fetch, x) for x in range(50)]
for f in futures:
await f
loop = asyncio.get_event_loop()
loop.run_until_complete(main())
Run Code Online (Sandbox Code Playgroud)
通常,等待期货排队的顺序很好:
蓝色表示每个任务在执行程序队列中的时间,run_in_executor
即已被调用,但该函数尚未执行,因为执行程序仅同时运行5个任务; 绿色是执行功能本身所花费的时间; 红色是等待所有先前期货所花费的时间await
.
在我的情况下,函数的时间变化很大,等待队列中的先前期货等待时会有很多时间丢失,而我可以在本地处理GET输出.这使得我的系统空闲一段时间只是在几个输出同时完成时被淹没,然后跳回空闲等待更多请求完成.
有没有办法await
在执行者中首先完成任何未来?
这可能是一个愚蠢的问题并且有一个明显的答案,但我正在测试我的404和500错误处理程序,这意味着我必须将调试切换为False.我去了Django管理页面,注意到没有提供静态文件.
我知道它们应该通过Apache路由,因为通过Django服务静态文件是不安全的.但是,我不太明白为什么直接通过Django提供静态文件会带来安全风险?
我正在用tkinter编写一个应用程序,我试图在框架中放置几个标签......不幸的是,
windowTitle=Label(... width=100)
Run Code Online (Sandbox Code Playgroud)
和
windowFrame=Frame(... width=100)
Run Code Online (Sandbox Code Playgroud)
宽度差异很大......
到目前为止,我使用此代码:
windowFrame=Frame(root,borderwidth=3,relief=SOLID,width=xres/2,height=yres/2)
windowFrame.place(x=xres/2-160,y=yres/2-80)
windowTitle=Label(windowFrame,background="#ffa0a0",text=title)
windowTitle.place(x=0,y=0)
windowContent=Label(windowFrame,text=content,justify="left")
windowContent.place(x=8,y=32)
...
#xres is screen width
#yres is screen height
Run Code Online (Sandbox Code Playgroud)
出于某种原因,设置标签宽度不能正确设置宽度,或者不使用像素作为测量单位......那么,有没有办法以windowTitle
适应框架长度的方式放置窗口小部件,或者以像素为单位设置标签宽度
我的一些应用程序库依赖于能够将 UTF-8 字符打印到 stdout 和 stderr。因此,这不能失败:
print('\u2122')
Run Code Online (Sandbox Code Playgroud)
在我的本地机器上它可以工作,但在我的远程服务器上它引发 UnicodeEncodeError: 'ascii' codec can't encode character '\u2122' in position 0: ordinal not in range(128)
我试过$ PYTHONIOENCODING=utf8
没有明显效果。
sys.stdout = codecs.getwriter("utf-8")(sys.stdout.detach())
Run Code Online (Sandbox Code Playgroud)
工作了一段时间,然后停止并最终失败 ValueError: underlying buffer has been detached
sys.getdefaultencoding()
返回'utf-8'
, 并sys.stdout.encoding
返回'ANSI_X3.4-1968'
我能做什么?我不想编辑第三方库。
我正在 aiohttp 中编写网络爬虫并遇到 cookie 问题。我尝试抓取的服务器需要身份验证,并且为了获取可供经过身份验证的用户使用的页面,我需要在密钥本身中设置一个带有括号的 cookie。这是一个问题,因为aiohttp.ClientSession.cookie_jar.update_cookies
要么忽略任何非法 cookie:
session = ClientSession()
cookie = SimpleCookie("a[b]=1234;")
session.cookie_jar.update_cookies(cookie)
print([f for f in session.cookie_jar]) # empty list, cookie not set
Run Code Online (Sandbox Code Playgroud)
或提出CookieError
:
session = ClientSession()
cookie = SimpleCookie()
cookie["a[b]"] = "1234" # http.cookies.CookieError: Illegal key 'a[b]'
session.cookie_jar.update_cookies(cookie)
print([f for f in session.cookie_jar])
session = ClientSession()
session.cookie_jar.update_cookies([("a[b]", "1234")]) # http.cookies.CookieError: Illegal key 'a[b]'
print([f for f in session.cookie_jar])
Run Code Online (Sandbox Code Playgroud)
可以通过访问http.cookies.Morsel
受保护的成员来强制设置cookie _key
,即
session = ClientSession()
session.cookie_jar.update_cookies([("__tmp", "1234")])
for cookie in session.cookie_jar:
if …
Run Code Online (Sandbox Code Playgroud) 我正在将旧项目升级到最新版本的 python/django,并且在自定义模板标签方面遇到问题。
模板标签定义:
from django import template
register = template.Library()
def my_tag(*args) -> str:
""" returns html code """
register.simple_tag(lambda *x: my_tag("hello world", *x), name='my_tag')
Run Code Online (Sandbox Code Playgroud)
标签用法示例:
{% my_tag "this no longer works, this autoescapes my code" %}
Run Code Online (Sandbox Code Playgroud)
如何修改标签定义以防止自动转义,这样我就不必修改模板:
{% autoescape off %}{% my_tag "workaround, this doesn't autoescape html" %}{% endautoescape %}
Run Code Online (Sandbox Code Playgroud) 好吧,这听起来像是一个愚蠢的问题,但我无法解决这个问题......
我需要从下载的文件中删除所有反斜杠的实例......但是,
output.replace("\","")
Run Code Online (Sandbox Code Playgroud)
不起作用.Python认为"\","一个字符串,而不是"\"一个字符串和""另一个字符串.
我怎样才能删除反斜杠?
编辑:新问题...最初,必须处理下载的文件,我使用:
fn = "result_cache.txt"
f = open(fn)
output = []
for line in f:
if content in line:
output.append(line)
f.close()
f = open(fn, "w")
f.writelines(output)
f.close()
output=str(output)
#irrelevant stuff
with open("result_cache.txt", "wt") as out:
out.write(output.replace("\\n","\n"))
Run Code Online (Sandbox Code Playgroud)
哪个工作正常,将文件的内容减少到只有一行...最后只有这个内容结束:
Line of text\
Another line of text\
There\\\'s more text here\
Last line of text
Run Code Online (Sandbox Code Playgroud)
我不能再使用相同的东西,因为它会将每一行转换为列表中的值,留下括号和逗号...所以,我需要:
out.write(output.replace("\\n","\n"))
out.write(output.replace("\\",""))
Run Code Online (Sandbox Code Playgroud)
在同一行......怎么样?或者还有另一种方式吗?