我正在使用VB的StringBuilder,我很好奇什么被认为是用于清空构建器/将其设置为新字符串的"最佳实践".它会是这样的:
Dim str As New System.Text.StringBuilder()
str.Append("Some string to remove")
str = new System.Text.StringBuilder()
str.Append("Ahh, fresh new text!")
Run Code Online (Sandbox Code Playgroud)
或者,还有更好的方法?
谢谢
我在C中有完整的项目,可以使用gcc或Visual Studio构建.没有外部库的调用.
我想知道该项目中有多少功能.
源代码中没有未使用的函数,项目附带了使用不同参数运行它的测试,因此对于动态方法(例如运行时调用树),我需要在每次测试后累积结果.
有没有可以执行静态或动态分析的工具?
现在我已经设置了 Nginx 来提供我确信是有效的文件路径的服务。但是,它给了我一个 404 未找到。
我查看了一下/var/log/nginx/access.log,它向我展示了:
[05/Oct/2016:19:15:50 -0500] "GET /menu.html HTTP/1.1" 404 571 "-" "Mozilla/5.0 ....
Run Code Online (Sandbox Code Playgroud)
但不是它尝试在 localhost 上访问的路径,应该是/usr/share/nginx/html/menu.html. 如何配置 Nginx 来显示这些信息?
我的目标:使窗口背景具有特定的颜色。
我当前的代码:
import curses
def do_it(win): # Shia LeBeouf!
win.bkgd(' ', curses.COLOR_BLUE)
win.addstr(1,1, "This is not blue")
win.getch()
if __name__ == '__main__':
curses.wrapper(do_it)
Run Code Online (Sandbox Code Playgroud)
我的期望是我的窗口将是蓝色的,并出现“这不是蓝色”。相反,我得到这个窗口:
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
$This$is$not$blue$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
Run Code Online (Sandbox Code Playgroud)
它甚至不是很蓝。
我也尝试过:
win.bkgd(curses.COLOR_BLUE)- 似乎删除了所有空格(?)win.bkgdset(' ', curses.COLOR_BLUE)- 似乎做同样的事情这些以及更多,都无济于事。
那么问题来了:如何在curses中设置窗口的背景颜色?
我有这个样式表:
.pixel{
position: absolute;
height: 10px;
width: 10px;
background-color: #ffcc00;
font-size: 0px;
}
Run Code Online (Sandbox Code Playgroud)
这个javascript:
function drawpixel(x,y){
el = document.createElement('div');
el.setAttribute('class','pixel');
el.style.left = x;
el.style.top = y;
/* IE needs this for some reason?
el.style.position = "absolute";
el.style.backgroundColor = "#FFCC00";
el.style.width = "2px";
el.style.height = "2px";
*/
el.style.fontSize = "0px";
el.style.lineHeight = "0px";
document.body.appendChild(el);
}
function mover(event){
element = document.getElementById("coords");
element.innerHTML = event.clientX + " " + event.clientY;
drawpixel(event.clientX, event.clientY);
}
Run Code Online (Sandbox Code Playgroud)
这让我可以"画"div.但IE需要这4行注释 - 由于某种原因它不会读取类信息?
是否有任何更简单的方法来"修复"IE,或者我只需要拥有这4行?
谢谢
我的ASP.net页面上有一个表格,如下所示:
<table runat="server" id="resultsTable"></table>
Run Code Online (Sandbox Code Playgroud)
我动态地向表中添加内容,它运行得很好.但是,一旦我添加了动态内容,我想得到表格的HTML,即这样的事情(格式化并不重要,我刚刚添加了它)
<table runat="server" id="resultsTable">
<tr>
<td>Hello!</td>
</tr>
<tr>
<td>Goodbye!</td>
</tr>
</table>
Run Code Online (Sandbox Code Playgroud)
我需要将结果作为字符串.显然我可以做一些循环并用数据构建我自己的表,但是如果可能的话我宁愿不这样做.
我正在使用SQLAlchemy与我的数据库通信.因为没有多少人会使用我的应用程序(至少在最初阶段),我认为SQLite是最快/最简单的后端.
我有一个User,它有一个基于字符串的唯一ID,例如asdf@asdf.com,或Mr. Fnord.我不关心id的格式 - 只是它是唯一的.但是,我希望这是一个不区分大小写的唯一性.所以Mr. Fnord,mr. fNoRd也是等同的.
显然COLLATE你可以使用的架构有一个设置,但(至少对于sqlite)它似乎并不是一个好的前锋.我的解决方案是在类进入表之前使用类中的属性来小写所有内容,但这看起来很脆弱/ hackish.
是性能来处理一切lowercasing最好的方式,还是有更好的方法,使通过的SQLAlchemy/SQLite的东西不区分大小写?
我经常从Visual Studio向Vim发送文件.我将它设置为具有以下参数的外部工具:
"+call cursor($(CurLine), $(CurCol))"
Run Code Online (Sandbox Code Playgroud)
但是,我也希望能够调用自己的函数.当我从VS编辑文件时,我希望窗口很大,所以我希望能够做到这样的事情:
"+call cursor($(CurLine), $(CurCol)); +call Embiggen()"
Run Code Online (Sandbox Code Playgroud)
但是,这不起作用.我尝试了一些变化(例如, call Embiggen(),等等).
显然我可以编写自己的PlaceCursorAndEmbiggen函数,但我真的不想这样做.有没有办法在Vim启动时调用多个函数?
我已经能够找到许多在另一个方向上工作的东西,但到目前为止我没有太多运气.
我希望能够read从命令行进入新的缓冲区.我希望有类似的东西:
:r!tac % | new
Run Code Online (Sandbox Code Playgroud)
并且新缓冲区将包含输出 tac %
有没有合理的方法来做到这一点?
在Tornado的聊天演示中,它有一个这样的方法:
@tornado.web.asynchronous
def post(self):
cursor = self.get_argument("cursor", None)
global_message_buffer.wait_for_messages(self.on_new_messages,
cursor=cursor)
Run Code Online (Sandbox Code Playgroud)
我对这个长时间的轮询很新,我并不完全理解线程的工作原理,尽管它表明:
通过使用非阻塞网络I/O,Tornado可以扩展到数万个开放连接......
我的理论是通过制作一个简单的应用程序:
import tornado.ioloop
import tornado.web
import time
class MainHandler(tornado.web.RequestHandler):
@tornado.web.asynchronous
def get(self):
print("Start request")
time.sleep(4)
print("Okay done now")
self.write("Howdy howdy howdy")
self.finish()
application = tornado.web.Application([
(r'/', MainHandler),
])
Run Code Online (Sandbox Code Playgroud)
如果我连续发出两个请求(即我打开两个浏览器窗口并快速刷新两个),我会看到:
Start request
Start request
Okay done now
Okay done now
Run Code Online (Sandbox Code Playgroud)
相反,我明白了
Start request
Okay done now
Start request
Okay done now
Run Code Online (Sandbox Code Playgroud)
这让我相信它在这种情况下实际上是阻塞的.为什么我的代码是阻塞的,我如何获得一些代码来做我期望的呢?我在Windows 7上使用核心i7获得相同的输出,并且我认为有两个核心的Linux Mint 13盒子.
我找到了一种方法 - 如果有人能提供一种跨平台工作的方法(我不太担心性能,只是它是非阻塞的),我会接受这个答案.
python ×3
vim ×2
asp.net ×1
asynchronous ×1
c ×1
colors ×1
css ×1
curses ×1
html-table ×1
javascript ×1
nginx ×1
pipe ×1
sqlalchemy ×1
sqlite ×1
tornado ×1
vb.net ×1