我想解析srt字幕:
1
00:00:12,815 --> 00:00:14,509
Chlapi, jak to jde s
t?ma pracovníma sv?tlama?.
2
00:00:14,815 --> 00:00:16,498
Trochu je zesilujeme.
3
00:00:16,934 --> 00:00:17,814
Jo, sleduj.
Run Code Online (Sandbox Code Playgroud)
每个项目都进入结构.有了这个正则表达式:
A:
RE_ITEM = re.compile(r'(?P<index>\d+).'
r'(?P<start>\d{2}:\d{2}:\d{2},\d{3}) --> '
r'(?P<end>\d{2}:\d{2}:\d{2},\d{3}).'
r'(?P<text>.*?)', re.DOTALL)
Run Code Online (Sandbox Code Playgroud)
B:
RE_ITEM = re.compile(r'(?P<index>\d+).'
r'(?P<start>\d{2}:\d{2}:\d{2},\d{3}) --> '
r'(?P<end>\d{2}:\d{2}:\d{2},\d{3}).'
r'(?P<text>.*)', re.DOTALL)
Run Code Online (Sandbox Code Playgroud)
这段代码:
for i in Subtitles.RE_ITEM.finditer(text):
result.append((i.group('index'), i.group('start'),
i.group('end'), i.group('text')))
Run Code Online (Sandbox Code Playgroud)
使用代码BI只有一个项目在数组中(因为贪婪.*)和代码AI有空的'文本',因为没有贪心.*?
怎么治这个?
谢谢
我开始使用谷歌appengine在Windows平台上构建python应用程序
我们调试和运行我的应用程序的步骤是什么
我在这里问你如何改变树视图的背景,我试过了
ttk.Style().configure("Treeview", background="#383838")
Run Code Online (Sandbox Code Playgroud)
它完全适用于单元格,但Treeview的其余部分保持白色.
我试图改变窗口的背景,框架也是如此,但它不起作用.
所以,怎么做,我相信你知道.
再见,并提前谢谢:)
代码
from tkinter import *
from tkinter import ttk
p=Tk()
separator = PanedWindow(p,bd=0,bg="#202322",sashwidth=2)
separator.pack(fill=BOTH, expand=1)
_frame = Frame(p,bg="#383838")
t=ttk.Treeview(_frame)
t["columns"]=("first","second")
t.column("first",anchor="center" )
t.column("second")
t.heading("first",text="first column")
t.heading("second",text="second column")
t.insert("",0,"dir1",text="directory 1")
t.insert("dir1","end","dir 1",text="file 1 1",values=("file 1 A","file 1 B"))
id=t.insert("","end","dir2",text="directory 2")
t.insert("dir2","end",text="dir 2",values=("file 2 A","file 2 B"))
t.insert(id,"end",text="dir 3",values=("val 1 ","val 2"))
t.insert("",0,text="first line",values=("first line 1","first line 2"))
t.tag_configure("ttk",foreground="black")
ysb = ttk.Scrollbar(orient=VERTICAL, command= t.yview)
xsb = ttk.Scrollbar(orient=HORIZONTAL, command= t.xview)
t['yscroll'] = ysb.set
t['xscroll'] = xsb.set …Run Code Online (Sandbox Code Playgroud) 我有一个循环,想要执行到耗尽或直到达到一些用户指定的限制.我有一个看起来不好的结构,但我似乎找不到更优雅的表达方式; 有吗?
def ello_bruce(limit=None):
for i in xrange(10**5):
if predicate(i):
if not limit is None:
limit -= 1
if limit <= 0:
break
def predicate(i):
# lengthy computation
return True
Run Code Online (Sandbox Code Playgroud)
神圣的筑巢!一定有更好的方法.出于工作示例的目的,xrange使用我通常具有有限但未知长度的迭代器(并且谓词有时返回False).
源目录的确定如下:
SHOW=${PWD##*/}
SRC=wells@server.com:"/mnt/bigfish/video/TV/${SHOW}/"
Run Code Online (Sandbox Code Playgroud)
所以它出现了类似于:
wells@server.com:/mnt/bigfish/video/TV/The Name Of the Show With Spaces/
Run Code Online (Sandbox Code Playgroud)
然后尝试像这样运行rsync:
rsync -avz -e ssh "${SRC}" .
Run Code Online (Sandbox Code Playgroud)
但它告诉我""/ mnt/bigfish/video/TV /"不是目录","/ mnt/bigfish/video/TV/Name"不是目录等,但是有很多以空格分隔的单词在源目录的名称中.
我怎样才能纠正这个令人讨厌的恼人问题?
更新我在OS 10.6上运行它,我最终用转义空格替换空格,如下所示:
SRC=wells@kittenfactory.com:"/mnt/bigfish/video/TV/${SHOW// /\ }/"
Run Code Online (Sandbox Code Playgroud) 如何更改实例的__cmp__函数(不在类中)?
例如:
class foo:
def __init__(self, num):
self.num = num
def cmp(self, other):
return self.num - other.num
# Change __cmp__ function in class works
foo.__cmp__ = cmp
a = foo(1)
b = foo(1)
# returns True
a == b
# Change __cmp__ function in instance that way doesnt work
def cmp2(self, other):
return -1
a.__cmp__ = cmp2
b.__cmp__ = cmp2
# Raise error
a == b
#Traceback (most recent call last):
# File "<stdin>", line 1, in <module>
#TypeError: cmp2() …Run Code Online (Sandbox Code Playgroud) 我有一个包含.tcb和.tch文件的文件夹.我需要知道所有.tcb文件的大小,分别是所有.tch文件的大小.我喜欢这样:
1)我创建了一个临时文件夹然后:
mv *tch temp
Run Code Online (Sandbox Code Playgroud)
2)然后:
du -sk temp
Run Code Online (Sandbox Code Playgroud)
我发现互联网上的命令和维基百科说:"du(从磁盘使用中缩写)是用于估计文件空间使用情况的标准Unix程序".我认为之所以说它是一个估计的原因是,如果有链接,那么将显示链接的大小而不是链接文件.
但如果我这样做
ls -l
Run Code Online (Sandbox Code Playgroud)
在temp文件夹(包含所有*.tch)文件中,然后总结终端中显示的大小,我有另一个文件大小.为什么会这样?
总而言之,我需要的是一个命令,它向我显示文件夹中*all .tch文件的实际文件大小,该文件夹还可以包含其他文件类型.
我希望有人能帮助我.非常感谢!
我写了一个函数,在调用时打开一个带有给定文件名的vim编辑器.如何进行这些类型操作的单元测试....
我正在为我的部署bash脚本寻找简单的解决方案.
此脚本的每次运行都应该将标记添加到production分支上的最新修订,但是远程仓库的标记.
运行脚本的人可能拥有自己的production更改集,而不是推送到远程仓库,我的服务器直接从具有只读访问权限的远程仓库获取代码.这就是为什么我需要从远程仓库获取最新的变更集,但在本地提交标记.
我试过像:
hg identify -i $(hg paths default)
hg heads production
希望有一些我缺少的东西,有一种方法可以获得远程分支头修订ID.
我正在通过 ansible-playbook 自动安装 sage。因为我需要运行两个 shell 脚本。这是第一个 shell 脚本的外观:
#!/bin/bash
# Creating Sage notebook
dir="/root/.sage/sage_notebook.sagenb"
screen -S "Sage_Server" sage -c 'notebook(interface="", directory=$dir, port=80, accounts=true)'
Run Code Online (Sandbox Code Playgroud)
这是第二个 shell 脚本的代码:
#!/bin/bash
# Creating Sage inotebook
address=$(hostname --ip-address)
sage -c "inotebook(interface=" "'$address'" ",port=80,accounts=true)"
Run Code Online (Sandbox Code Playgroud)
这就是剧本的样子:
---
- hosts: localhost
remote_user: root
tasks:
- name : update system
apt : update_cache=yes
- name : install m4
apt : name=m4 state=present
- name : install build-essential
apt : name=build-essential state=present
- name : install gcc
apt : name=gcc …Run Code Online (Sandbox Code Playgroud) python ×6
bash ×2
linux ×2
ansible ×1
cmp ×1
coding-style ×1
filesize ×1
macos ×1
mercurial ×1
python-3.x ×1
regex ×1
rsync ×1
shell ×1
tkinter ×1
unit-testing ×1