我试图使用Python从现有文件中提取许多位置.这是我当前提取位置的代码:
self.fh = open( fileName , "r+")
p = re.compile('regGen regPorSnip begin')
for line in self.fh :
if ( p.search(line) ):
self.porSnipStartFPtr = self.fh.tell()
sys.stdout.write("found regPorSnip")
Run Code Online (Sandbox Code Playgroud)
这个代码段重复了很多次(少了文件打开),具有不同的搜索值,似乎有效:我得到了正确的消息,变量有值.
但是,使用下面的代码,第一个写入位置是错误的,而后续写入位置是正确的:
self.fh.seek(self.rstSnipStartFPtr,0)
self.fh.write(str);
sys.stdout.write("writing %s" % str )
self.rstSnipStartFPtr = self.fh.tell()
Run Code Online (Sandbox Code Playgroud)
我已经读过,由于Python倾向于"提前读取",传递某些read/ readline选项fh会导致错误的判断值.我看到避免这种情况的一个建议是读取整个文件并重写它,这在我的应用程序中不是一个非常有吸引力的解决方案.
如果我将第一个代码段更改为:
for line in self.fh.read() :
if ( p.search(line) ):
self.porSnipStartFPtr = self.fh.tell()
sys.stdout.write("found regPorSnip")
Run Code Online (Sandbox Code Playgroud)
然后它似乎self.fh.read()只返回字符而不是整行.搜索从不匹配.这似乎也适用于此self.fh.readline().
我的结论是,fh.tell在写操作后查询时只返回有效的文件位置.
有没有办法在阅读/搜索时提取准确的文件位置?
谢谢.
我正在尝试在React组件中创建一个时钟计时器.但是我遇到了困难.任何帮助,将不胜感激.
import React from "react";
import ReactDOM from "react-dom";
export default class App extends React.Component {
render() {
return (
<ShowDate />
);
}
}
ReactDOM.render(<App/>, document.getElementById('app'));
function ShowDate() {
return {new Date().toLocaleTimeString()};
}
setInterval(ShowDate, 1000);
Run Code Online (Sandbox Code Playgroud) 为了说明我的问题,这是一个不使用的基本请求contextlib:
import urllib.request
url = "http://www.example.com/"
with urllib.request.urlopen(url) as response:
raw_data = response.read()
Run Code Online (Sandbox Code Playgroud)
并使用相同的请求contextlib:
import contextlib
import urllib.request
url = "http://www.example.com/"
with contextlib.closing(urllib.request.urlopen(url)) as response:
raw_data = response.read()
Run Code Online (Sandbox Code Playgroud)
据我所知,这两个请求具有相同的结果:检索数据,请求在代码块完成时自动关闭,raw_data即使在请求关闭后也可以访问.在使用请求时urllib.request.urlopen,是否有使用优势contextlib.closing或是多余的?一种方法更像Pythonic和/或更常见吗?
我正在通过我的应用通过Facebook和Google+等社交网站进行身份验证。我选择了React.js进行查看。
这是我的代码:
<body>
<div id="Login-widget"></div>
<script type="text/jsx">
var Login = React.createClass({
render: function() {
return (
<ul className="info nav nav-pills nav-stacked" id="profile-accordion">
<li className="panel">
<a href="#" data-parent="#profile-accordion" data-toggle="collapse">
<span className="glyphicon glyphicon-chevron-down pull-right" />
Logged with WRIO
</a>
<div className="in" id="profile-element">
<div className="tickets">
<div className="media thumbnail">
<div className="col-xs-12 col-md-6 col-lg-5">
<img src="https://avatars2.githubusercontent.com/u/604410?v=3&s=460" className="pull-left" />
<ul className="details">
<li>Name: Alexey Anshakov</li>
<li>Registered: 22 Jun 2013</li>
<li>Rating: 244</li>
<li>Followers: 1,634</li>
<li>Posts: 1,634</li>
</ul>
</div>
<div className="col-xs-12 col-md-6 col-lg-7">
<div className="media-body">
Disclaimer: We start a …Run Code Online (Sandbox Code Playgroud) 当我运行此代码时:
import http.client
hR = ["/index.html"]
conn = http.client.HTTPConnection("www.python.org", 80)
conn.connect()
conn.request("GET", hR)
response = conn.getresponse()
data = response.read()
print (data)
conn.close()
Run Code Online (Sandbox Code Playgroud)
我收到以下错误:
Traceback (most recent call last):
File "C:\Python32\files\fcon.py", line 5, in <module>
conn.request("GET", hR)
File "C:\Python32\lib\http\client.py", line 964, in request
self._send_request(method, url, body, headers)
File "C:\Python32\lib\http\client.py", line 992, in _send_request
self.putrequest(method, url, **skips)
File "C:\Python32\lib\http\client.py", line 877, in putrequest
if url.startswith('http'):
AttributeError: 'list' object has no attribute 'startswith'
Run Code Online (Sandbox Code Playgroud)
此外,当我将第 3 行中的 URL 更改为“ http://python.org ”时,我收到了一个不同的错误:
Traceback (most recent …Run Code Online (Sandbox Code Playgroud) 我想span在列表项中有多个元素.他们inline当然是假设的.当我将word-wrap: break-word属性添加到其中一个span元素时,我期待包装的单词,但元素也包装.
在这个小提琴中你可以清楚地看到span带有类message的元素在元素后面name.我希望这些元素内联,但是第二个用class包装message.
我想要实现的可以与twitch.tv聊天消息结构进行比较.

消息的twitch.tv HTML如下:
<li class="ember-view message-line chat-line" id="ember6565">
<div class="indicator"></div>
<span class="timestamp float-left">3:34</span>
<span class="badges float-left"></span>
<span class="from" style="color:#D2691E">yourusername</span>
<span class="colon">:</span>
<span class="message" style="undefined">message here</span>
</li>
Run Code Online (Sandbox Code Playgroud)
问候
我在使用jQuery和Turbolinks的Rails应用程序中使用计时器时出现以下问题:我setTimeout在我的起始页面上运行了一个计时器图像幻灯片.当我点击一个链接页面改变,但计时器继续滚动,我认为这是由Turbolinks引起的.此外,当我重新进入开始页面时,它再次触发计时器并堆叠在旧计时器上.
我一直在玩clearTimeout(例如,试图将它放在不同的地方),但我不能让它工作.我希望能够看到是否有setTimeout跑步,然后在开始新的之前停止它,或类似的东西......
这是我在开始页面上的计时器:
var timerSplash = setTimeout(splash, 5000);
Run Code Online (Sandbox Code Playgroud)
我现在真的走到了尽头,我需要帮助!
javascript ×3
python ×2
python-3.x ×2
reactjs ×2
css ×1
ecmascript-6 ×1
html ×1
jquery ×1
seek ×1
tell ×1
urllib ×1
word-wrap ×1