⑴ windows系统下,首行#/usr/bin/env python是不是没有用

#!/usr/bin/env python
# encoding: utf-8

"""
MonitorLog.py

Usage: MonitorLog.py ...
Monitor the log file

-f log file
-h help info

python MonitorLog.py -f C:\monitor.log

Created by zhoubo on 2011-08-29.
"""

import sys
import os
import getopt
import subprocess
import time
import codecs
import winsound

ABSPATH = os.path.dirname(os.path.abspath(__file__))
MONITERCONF = 'moniter_keyword.txt' #utf8 file

def main():
try:
opts, args = getopt.getopt(sys.argv[1:], 'hf:')
except getopt.GetoptError, err:
print str(err)
print __doc__
return 1

path = ''
for k, v in opts:
if k == '-f':
path = v
elif k == '-h':
print __doc__
return 0

if not (path and os.path.exists(path)):
print 'Invalid path: %s' % path
print __doc__
return 2

#命令行元组
cmd = ('tail', '-f', path)
print ' '.join(cmd)
output = subprocess.Popen(cmd, stdout=subprocess.PIPE)

keywordMap = {}
#加载监控的关键字信息
with codecs.open(os.path.join(ABSPATH, MONITERCONF), 'r', 'utf8') as f:
lines = f.readlines()
for line in lines:
line = line.strip()
if not line:
continue
keyword, wav = line.strip().split(':')
keywordMap[keyword] = wav

while True:
line = output.stdout.readline()
#process code,得到输出信息后的处理代码
if not line:
time.sleep(0.01)
continue
line = line.strip().decode('utf8')
print line
for keyword in keywordMap:
if line.find(keyword) > -1:
winsound.PlaySound(keywordMap[keyword],
winsound.SND_NODEFAULT)
#time.sleep(0.01)
return 0

if __name__ == '__main__':
sys.exit(main())

⑵ 如何在pythonenv中使用高版本django

安装Virtualenv和Python3(因为有些Linux发行版默认没有安装Python3的)

sudo pip install virtualenv
sudo apt-get install python3

建立一个新的工作环境

virtualenv --no-site-packages --python=python3.4 test_env
如果出现The executable python does not exist 错误,那么可以这样使用
virtualenv --no-site-packages --python=3.4 test_env

其中,–no-site-packages表示不包括系统全局的Python安装包,这样会更令环境更干净
–python=python3.4指定Python的版本未系统已经安装了的Python3.4
test_env是建立的环境的名称
进入环境测试并安装Django
使用source test_env/bin/activate命令进入开发环境,然后查看Python版本,再使用pip install django安装django

➜ virtualenv
➜ virtualenv ls
test_env
➜ virtualenv source test_env/bin/activate # 如果是windows则是source test_env/Script/activate
(test_env)➜ virtualenv python
Python 3.4.0 (default, Apr 11 2014, 13:05:11)
[GCC 4.8.2] on linux
Type "help", "right", "credits" or "license" for more information.
>>> import django
Traceback (most recent call last):
File "<stdin>", line 1, in <mole>
ImportError: No mole named 'django'
>>> exit()
(test_env)➜ virtualenv pip install django
Collecting django
Using cached Django-1.7.3-py2.py3-none-any.whl
Installing collected packages: django

Successfully installed django-1.7.3
(test_env)➜ virtualenv python
Python 3.4.0 (default, Apr 11 2014, 13:05:11)
[GCC 4.8.2] on linux
Type "help", "right", "credits" or "license" for more information.
>>> import django
>>>

import django没有发生错误,证明已经成功安装Django了

⑶ #!/usr/bin/env python与#!/usr/bin/python的区别

在unix类的操作系统才有意义。

#!/usr/bin/python是告诉操作系统执行这个脚本的时候,调用/usr/bin下的python解释器。

#!/usr/bin/env python这种用法是为了防止操作系统用户没有将python装在默认的/usr/bin路径里。当系统看到这一行的时候,首先会到env设置里查找python的安装路径,再调用对应路径下的解释器程序完成操作。

(3)envpython扩展阅读:

Python是一种计算机程序设计语言。是一种动态的、面向对象的脚本语言,最初被设计用于编写自动化脚本(shell),随着版本的不断更新和语言新功能的添加,越来越多被用于独立的、大型项目的开发。

Python常用的代码:,

1,生成随机数

rnd=random.randint(1,500):生成1-500之间的随机数

2,读文件

f=open("c:\1.txt","r")

lines=f.readlines()

forlineinlines

printline

3,写文件

f=open("c:\1.txt","r+"):可读可写模式

f.write("123"):写入字符串

4正则表达式,读取tomcat的日志并打印日期

importre

regx="dddd-dd-d+"

f=open("c:stdout.log","r")

i=0

forstrinf.readlines():

ifre.search(regx,str):

Response.write(str+"<br>")

ifi>10:break

i=i+1

f.close();

5,连接数据库

importpgdb

conn=pgdb.connect

(host='localhost',databse='qingfeng',user='qingfeng',password='123')

cur=conn.cursor()

cur.execute("select * from dream")

printcur.rowcount

⑷ 在vim中怎样自动生成#/usr/bin/env python

在用户家目录下创建vimrc文件,然后将如下内容添加进来:
function HeaderPython()
call setline(1, "#!/usr/bin/env python")
call append(1, "#-*- coding:utf8 -*-")
normal G
normal o
normal o
endf
autocmd bufnewfile *.py call HeaderPython()
保存退出即可专
比如我用的是root用户,那么我创建属过程如下:
vim ~/.vimrc
function HeaderPython()
call setline(1, "#!/usr/bin/env python")
call append(1, "#-*- coding:utf8 -*-")
normal G
normal o
normal o
endf
autocmd bufnewfile *.py call HeaderPython()
保存后退出
然后在任何目录下直接vim 文件名即可

⑸ #!/usr/bin/env python

"有人来说"他是对的。
“自#!/usr/bin/env python”这只是告诉操作系统这个脚本的解释、执行程序的具体位置,+了这个头,在"X"类操作系统中就直接可以这样执行脚本了“hello.py”,否则的话就得这样执行“python hello.py”.
区别:
#!/usr/bin/python 直接告诉计算机执行程序的具体位置
#!/usr/bin/env python 告诉计算机执行程序在系统环境变量中的名字,详细位置在环境变量中设置好了
-----------
这些都是非必要的,因为在执行脚本时,可以用详细路径来标明:
“/usr/bin/python hello.py”
在windows中也可以这样,不过一般设置了环境变量后可以直接“hello.py”
--是windows聪明,还是windows想把人变傻,这是一个问题

-
any way,welcome to be pythonic!

⑹ 怎么启动venv的python解释器

python自带的IDE,启动python用idle.bat,默认路径是 C:\Python27\Lib 或者win+r 进入命令行,键入python,进入python编译环境

⑺ #!/usr/bin/env python 用什么运行

你去装过python就行了版,权www.python.org

⑻ /usr/bin/env: python: 权限不够 root@kali:~# 这个是怎么回事 我执行PY文件就会这样,

文件头上加 #!/usr/bin/env python
chmod +x file.py
./file.py