为了对URI进行编码,我使用urllib.quote("schönefeld")
但是当字符串中存在一些非ascii字符时,它就是Thorws
KeyError: u'\xe9'
Code: return ''.join(map(quoter, s))
Run Code Online (Sandbox Code Playgroud)
我的输入字符串köln, brønshøj, schönefeld
等.
当我尝试在Windows中打印语句时(使用python2.7,pyscripter IDE).但是在linux中它会引发异常(我猜平台并不重要).
这就是我想要的:
from commands import getstatusoutput
queryParams = "schönefeld";
cmdString = "http://baseurl" + quote(queryParams)
print getstatusoutput(cmdString)
Run Code Online (Sandbox Code Playgroud)
探索问题的原因:
在urllib.quote()
,其实在异常被肆意return ''.join(map(quoter, s))
.
urllib中的代码是:
def quote(s, safe='/'):
if not s:
if s is None:
raise TypeError('None object cannot be quoted')
return s
cachekey = (safe, always_safe)
try:
(quoter, safe) = _safe_quoters[cachekey]
except KeyError:
safe_map = _safe_map.copy()
safe_map.update([(c, c) for c in safe])
quoter = …
Run Code Online (Sandbox Code Playgroud) 我有以下24小时时间:
{'Wed': '10:30 - 21:00', 'Sun': '10:30 - 21:00', 'Thu': '10:30 - 21:00',
'Mon': '10:30 - 21:00', 'Fri': '10:30 - 22:00', 'Tue': '10:30 - 21:00',
'Sat': '10:30 - 22:00'}
Run Code Online (Sandbox Code Playgroud)
如何将其转换为12小时?
{'Wed': '10:30 AM - 09:00 PM', 'Sun': '10:30 AM - 09:00 PM',
'Thu': '10:30 AM - 09:00 PM', 'Mon': '10:30 AM - 09:00 PM',
'Fri': '10:30 AM- 10:00 PM', 'Tue': '10:30 AM- 09:00 PM',
'Sat': '10:30 AM - 11:00 PM'}
Run Code Online (Sandbox Code Playgroud)
我想智能转换"10.30"
到"10.30 AM"
&"22:30"
来"10:30 PM" …
我想从我的python脚本启动一个进程main.py
,特别是我想运行下面的命令
`nohup python ./myfile.py &`
Run Code Online (Sandbox Code Playgroud)
这个文件myfile.py
应该在我的主要python脚本退出之后.
另外,我希望得到main.py
新流程.
我试过pid
,os.spawnl*
&os.exec*
方法,subprocess.Popen
如果我的main.py脚本退出,都会终止我的.
我可能会遗漏一些东西.
更新:我可以使用myfile.py
同main.py
?这是一种正确的方法吗?
例
a = subprocess.Popen([sys.executable, "nohup /usr/bin/python25 /long_process.py &"],\
stdout=subprocess.PIPE, stderr=subprocess.PIPE, stdin=subprocess.PIPE)
print a.pid
Run Code Online (Sandbox Code Playgroud)
如果我检查os.startfile
,我看不到任何进程正在运行.
long_process.py继续打印一些文本:没有退出.
我在这里做错了吗?
我刚刚更换了$stateChangeStart
与$transitions.onStart
$rootScope.$on('$stateChangeStart', function(e, ...){
e.preventDefault();
// other code goes here...
});
Run Code Online (Sandbox Code Playgroud)
至
$transitions.onStart({}, function(tras){
// need a code equivalent to e.preventDefault
// need a code to identify event.defaultPrevented
// other code goes here...
// get parent states
_o.util.getAncestorStates(toState.name, true).reverse()
.forEach(function (state) {
// certain condition to call event.preventDefault()
if(event.defaultPrevented) {....}
});
});
Run Code Online (Sandbox Code Playgroud)
我想,我们可以通过添加return $q.reject()
来阻止转换,e.preventDefault()
但我无法理解下面的代码return $q.reject()
将如何执行.
另外,我该如何更换event.defaultPrevented
?
我认为应该做些什么,transition.promise
但不清楚.
对不起,我无法理解官方文档 - https://ui-router.github.io/ng1/docs/latest/.任何人都可以帮我找到更好的解释或替换上面的代码吗?
javascript angularjs angular-ui angular-ui-router angularjs-1.6
我有字符串组成的时间,我想将时间格式化为12小时格式.
我试过了,
pat1 = "(\d+):(\d+)?\s*pm"
pat1 = "(\d+):(\d+)?\s*am"
hooString = "673 HOO: Mon. 7:30 am - 6pm, Tue. 7:30am - 6 pm, Wed. 7:30 am - 6 pm, Thurs. 7:30 am - 6 pm, Fri. 8 am - 5 pm,"
hooString = sub(compile(pat1, IGNORECASE), "\1:\2 AM", hooString)
hooString = sub(compile(pat2, IGNORECASE), "\1:\2 PM", hooString)
print hooString
Run Code Online (Sandbox Code Playgroud)
我得到了输出,
673 HOO: Mon. 7:30 AM - 6pm, Tue. 7:30 AM - 6 pm, Wed. 7:30 AM - 6 pm, Thurs. 7:30 AM - …
Run Code Online (Sandbox Code Playgroud) # -*- coding: utf-8 -*-
from pyquery import PyQuery as pq
from urllib import urlencode
from urllib2 import Request,urlopen
def sendRequest(url, data = None, headersOnly = False):
headers = { 'User-Agent' : 'Mozilla/5.0 (X11; U; Linux i686; en-US;)' }
request = Request(url, data, headers)
return urlopen(request).read()
resp = sendRequest("https://foursquare.com/v/rivers-edge-cafe-- morrison/4c1907776e02b7132eae627b")
print pq(resp)("#venueCategories").text()
Run Code Online (Sandbox Code Playgroud)
输出应该是Café,Burger Joint,Sandwich Place但是有例外:
Traceback (most recent call last):
File "unicodeerr1.py", line 11, in <module>
print pq(resp)("#venueCategories").text()
UnicodeEncodeError: 'ascii' codec can't encode character u'\xe9' in position 3: ordinal not …
Run Code Online (Sandbox Code Playgroud) 我有列表["Tue", "Wed", "Mon", "Thu", "Fri"]
作为列表,我想把它作为
["Mon", "Tue", "Wed", "Thu", "Fri"]
.
怎么排序呢?
我尝试了所有的CSS技巧,为我的body
标签制作线性渐变,如下所示.
但CSS渐变并不尖锐,所以我尝试了如下技巧,
<body><div class="bg"></div></body>
Run Code Online (Sandbox Code Playgroud)
.bg{
background-color:red;
width:3000px;
height:3000px;
overflow:hidden
}
.bg:before{
left: 7%;
top:-20%;
width:100%;
height:100%;
transform:rotate(25deg)
}
Run Code Online (Sandbox Code Playgroud)
所以,我实现了绿色矩形.我现在可以看到锐利的渐变.
但我必须编写media
查询来调整每个大小的旋转.
而且我认为如果我们可以在这个div上使用SVG绘制一个三角形从开始(0, 0)
到(body width, body height)
我可以真正做出响应线性渐变.
但我对SVG很新,如何使用SVG实现响应式反直角三角形?
简而言之,我想要一个响应两个彩色
smooth &
sharp
渐变背景.
更新:
完整的CSS代码在这里.
div.bg {
margin-top: -50px;
position: fixed;
height: 1500px;
width: 3500px;
overflow: hidden;
background-color: @bg-gradient-color-1;
background-size: cover;
z-index: -999999;
}
.bg:before {
content: '';
position: fixed;
width: 200%;
height: 200%;
background-color: @bg-gradient-color-2;
z-index: -999999;
}
@media only screen and (min-width: …
Run Code Online (Sandbox Code Playgroud) 如果我将我的角度版本更新为更高版本,我相信它会起作用,但是我更依赖于1.3.20
角度版本。
我尝试了angular-bootstrap
版本从1.1
到latest
,都无法使用1.3.20
。我得到的只是未知的提供者。
http://plnkr.co/edit/8TynLlehbEoJF4HY9o0S?p=preview
当您注释第9行和取消注释第10行时,此plunkr代码有效。
但是,当1.3.20的ngAnimate和angular版本的angular-bootstrap
版本为0.14.3时,它是非常旧的代码,它可以很好地工作。
如何在不升级角度版本的情况下解决此问题?
如果我可以$animateCss
显式添加提供程序,那么它起作用吗?但我怀疑它是否会影响其他任何代码。
我不想使用angular-bootstrap的0.14.3,因为它已经过时了。
我正在编写一个python库,它包含一个由不同类型的小时格式组成的paragrah.段落实际上来自不同的餐馆网站,他们每个网站都有各种格式的营业时间.所以,我决定写一个采用任何格式的库(例如:M-Fri 10am - 12pm,M,Tue,Wed 00:00-18:00等).我的决定是编写一组不同的RegEx,它接受一个字符串,如果它与我的任何模式匹配,则继续.
我选择了RegEx模式匹配,因为不是为每个模式编写自己的逻辑而只是使用str.replace替换可能需要花费很多时间.但是因为我是新手,所以我坚持使用正则表达式.所以你们中的任何人都可以建议我如何完成以下任务?
作为第一步,我想将所有工作日格式缩短为3个字母缩短工作日,如下所示.例:" 星期一09:00 AM - 5:00 PM,星期二09:00 AM - 5:00 PM,周三09:00 AM - 5:00 PM,星期四09:00 AM - 5:00 PM,星期五09: 6:00 AM - 5:00 PM,星期六休息,星期日休息 "
输出应该是" 周一 09:00 AM - 5:00 PM,星期二 09:00 AM - 5:00 PM,星期三 09:00 AM - 5:00 PM,星期四 09:00 AM - 5:00 PM,星期五 09 :上午00点至下午5点,周六休息,太阳落山"
谢谢.
python ×6
python-2.7 ×5
datetime ×3
javascript ×3
angularjs ×2
regex ×2
angular-ui ×1
css3 ×1
encoding ×1
fork ×1
formatting ×1
html ×1
html5 ×1
python-3.x ×1
replace ×1
sorting ×1
subprocess ×1
svg ×1
unicode ×1
urlencode ×1
urllib ×1
urllib2 ×1
utf-8 ×1