我有以下几行在我的matplotlib情节中渲染TeX注释:
import numpy as np
import matplotlib.pyplot as plt
from matplotlib import rc
rc('text', usetex=True)
rc('font', family='serif')
voltage = 220
notes = r"\noindent $V_2 = {0:.5} V$".format(voltage)
plt.annotate(notes, xy=(5,5), xytext=(7,7))
plt.show()
Run Code Online (Sandbox Code Playgroud)
它工作得很好,但我的第一个挑剔是它V是一个度量单位,因此它应该是文本模式,而不是(斜体)数学模式.我尝试以下字符串:
notes = r"\noindent $V_2 = {0:.5} \text{V}$".format(voltage)
Run Code Online (Sandbox Code Playgroud)
这引发了一个错误,因为{花括号}是Python的字符串格式化语法的所有权.在上面这行,只是{0:.5}正确的; {V}被视为陌生人.例如:
s1 = "Hello"
s2 = "World!"
print "Some string {0} {1}".format(s1, s2)
Run Code Online (Sandbox Code Playgroud)
应该给Some string Hello World!.
我如何确保TeX的{花括号}不会干扰Python的{花括号}?
如何使用clientserverMac OS X上的功能编译Vim ?我有vim-7.3.tar.bz2源码
我知道MacVim内置了它,但它只在GUI运行时才有效.我想使用CLI版本,因为我的工作使用CLI更容易(例如,我可以轻松切换到终端).
我使用以下./configure选项编译了Vim 7.3
./configure --enable-rubyinterp --enable-pythoninterp --with-features=huge
Run Code Online (Sandbox Code Playgroud)
我在Unix和Linux上看过这个问题,但它只关注Ubuntu解决方案.此外,由于我启用了huge功能集,我应该期待+clientserver,根据vimdoc:
因此,如果某个功能标有"N",则它包含在Vim的普通版,大版和大版中.
服务器功能仅适用于GUI MacVim.要重现这个:
$ Applications/MacVim.app/Contents/MacOS/Vim --servername VIM
Run Code Online (Sandbox Code Playgroud)
在另一个控制台:
$ vim --serverlist # does not output anything
Run Code Online (Sandbox Code Playgroud)
如果我要启动GUI MacVim,
$ vim --serverlist
VIM1
Run Code Online (Sandbox Code Playgroud)
但我的要求是在CLI Vim中工作.
测试Flask应用程序完成:
# main.py
from flask import Flask, request
app = flask.Flask(__name__)
@app.route('/')
def index():
s = 'Hello world!', 'AJAX Request: {0}'.format(request.is_xhr)
print s
return s
if __name__ == '__main__':
app.run()
Run Code Online (Sandbox Code Playgroud)
那么这是我的测试脚本:
# test_script.py
import main
import unittest
class Case(unittest.TestCase):
def test_index():
tester = app.test_client()
rv = tester.get('/')
assert 'Hello world!' in rv.data
if __name__ == '__main__':
unittest.main()
Run Code Online (Sandbox Code Playgroud)
在测试输出中,我会得到:
Hello world! AJAX Request: False
Run Code Online (Sandbox Code Playgroud)
如何使用AJAX请求测试我的应用程序?
我刚刚从Python.org下载了Python 2.7.1 DMG .我已经看到了获得ActivePython的建议,但我更喜欢Python.org中的建议.
mpkg在DMG中运行安装程序,接受所有默认设置,它是否会与Apple提供的Python和平共处?python终端,我会得到哪一个?PATH在安装不同的Python版本时,这些讨论是什么?我知道Python安装程序会自动设置它.但我还是想偷看.我知道如何在Windows(环境变量)中执行此操作.对于Mac OS X,我该如何修补PATH?我不妨先试试这些,但我是Mac的新手.Python是一个非常复杂的安装,将文件写入不同的文件夹并配置操作系统设置,如PATH.TrashMe或AppCleaner在卸载Python时可能不是很有效,如果我想要回到干净的平台.因此,我希望从上面的问题中获得明确的见解.
我有以下Hello World代码在我的Mac上尝试使用matplotlib进行TeX渲染.
import matplotlib.pyplot as plt
from matplotlib import rc
rc('text', usetex=True)
rc('font', family='serif')
plt.text(2,2,r"Hello World!")
plt.show()
Run Code Online (Sandbox Code Playgroud)
使用该代码,我会收到以下错误:
sh: latex: command not found
Exception in Tkinter callback
<... a long Traceback here ...>
RuntimeError: LaTeX was not able to process the following string:
'lp'
Here is the full report generated by LaTeX:
Run Code Online (Sandbox Code Playgroud)
在最后一行之后我没有看到任何完整的报告.无论如何,我认为这是一个路径问题.关于如何修复它的一些指示?我有TeX Live 2010.
我尝试添加/Library/TeX/Root/bin/universal-darwin到项目属性的全局Python路径,但我仍然得到相同的错误.

如何使用pyserial访问USB端口?我见过一个例子:
import serial
ser = serial.Serial('/dev/ttyUSB0')
Run Code Online (Sandbox Code Playgroud)
我曾经在Windows上从MATLAB访问串口并使用适当的语法,/dev/ttyUSB0将被替换为COM1任何其他COM端口.
我在Mac上,我尝试使用文档上的串口扫描程序pyserial无济于事.我想我应该这样写:
import serial
name = ? # Names of serial ports on Mac OS X
ser = serial.Serial(name)
Run Code Online (Sandbox Code Playgroud)
我如何知道nameMac上应该有什么?
编辑:在回答下面的答案时,我想了解如何访问USB转RS232转换器以及纯USB端口.
我有以下tzinfo具体的子类定义:
from datetime import datetime, timedelta, tzinfo
class ManilaTime(tzinfo):
def utcoffset(self, dt):
return timedelta(hours=8)
def tzname(self, dt):
return "Manila"
Run Code Online (Sandbox Code Playgroud)
我获取了一个日期字符串,并希望将其转换为时区感知datetime对象.我更喜欢使用以下方法:
def transform_date(date_string, tzinfo):
fmt = '%Y-%m-%d'
# Where do I insert tzinfo?
date = datetime.strptime(date_string, fmt)
return date
Run Code Online (Sandbox Code Playgroud)
有什么方法可以通过以下方式插入tzinfo到datetime对象中?
manila = ManilaTime()
date = transform_date('2001-01-01', manila)
Run Code Online (Sandbox Code Playgroud) 在我的.vimrc我有以下几行:
" .vimrc
let g:virtualenv_directory="/Users/Kit/Development/virtualenv"
Run Code Online (Sandbox Code Playgroud)
然后在~/.vim/ftplugin/python/virtualenv.vim我有这些:
py << EOF
import os.path
import sys
import vim
if 'VIRTUAL_ENV' in os.environ:
project_base_dir = os.environ['VIRTUAL_ENV']
sys.path.insert(0, project_base_dir)
activate_this = os.path.join(project_base_dir, 'bin/activate_this.py')
execfile(activate_this, dict(__file__=activate_this))
print "virtualenv in os.environ!"
EOF
VirtualEnvActivate my-virtualenv-python-2.7
Run Code Online (Sandbox Code Playgroud)
在~/.vim/ftplugin/python/virtualenv.vim我有这些SuperTab设置:
setlocal omnifunc=pythoncomplete#Complete
setlocal completeopt=menuone,longest,preview
let g:SuperTabDefaultCompletionType="<c-x><c-]>"
Run Code Online (Sandbox Code Playgroud)
在我的工作目录中,我一直在工作,我执行了以下bash命令TAGS为我的所有.py文件生成一个文件
find . -name '*.py' -type f -print0 | xargs -0 etags -l python
Run Code Online (Sandbox Code Playgroud)
例如,我有一个在main.py其中有一个对象app,以便以下脚本正常工作:
import main
new_app = main.app() …Run Code Online (Sandbox Code Playgroud) 我刚安装numpy和matplotlib我的OS X 10.6.6.我有来自Python.org的Python 2.7.当我这样做时import matplotlib.pyplot,我收到以下错误:
ImportError: dlopen(/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/matplotlib/_path.so, 2): no suitable image found. Did find:
/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/matplotlib/_path.so: no matching architecture in universal wrapper
Run Code Online (Sandbox Code Playgroud)
我错过了什么吗?我该如何解决?
更新1(2011年3月25日):
matplotlib交互式绘图系统使用Tcl/Tk/Tkinter提供GUI.我安装了64位Python,但我错过了Python.org下载页面link1,link2中的以下警告:


因此,我删除了64位版本并安装了32位版本.我建议保持这个问题,以防万一64位Tcl/Tk/Tkinter出现在Python 2.7中.
我从以下列表s和位掩码开始b:
s = ['baa', 'baa', 'black', 'sheep', 'have', 'you', 'any', 'wool']
b = [1, 0, 0, 0, 1, 1, 1, 0] # or any iterable with boolean values
Run Code Online (Sandbox Code Playgroud)
如何编写一些函数apply_bitmask(s, b)以便返回
['baa', 'have', 'you', 'any']
Run Code Online (Sandbox Code Playgroud) python ×8
macos ×5
matplotlib ×3
tex ×2
vim ×2
ajax ×1
autocomplete ×1
bitmask ×1
compilation ×1
datetime ×1
flask ×1
list ×1
pyserial ×1
sequence ×1
serial-port ×1
string ×1
supertab ×1
tags ×1
timezone ×1
tuples ×1
tzinfo ×1
unit-testing ×1
usb ×1