python26linux
⑴ 学python能找些什么工作
1、人工智能
目前国内人工智能基础编程语言是Python,当然人工智能是一个综合类大体系,不是简单的一种编程语言就能搞定的事情。而且人工智能除了基础编程原因对于高级算法以及相关的神经学科等等都需要有一定的基础。Python只是人工智能的一个引子,相当于编程语言里面的主要脉络,脉络内部的实现,以及脉络如何部署就不是编程语言所能涉猎的,所以编程语言在一定层面就是工具般的存在。
2、爬虫开发
能够做爬虫的编程工具和编程语言非常多,但是综合起来由于Python属于高度集成化的编程语言,内部集成了大量的优质库,直接去做显得非常高效,新的事物之所以被接受肯定在模式以及在效率上有明显的优势。
3、数据处理
这是从事互联网运营的人员必备基础,互联网讲求的是数据的收集和统计然后归纳出下一步的研发方向,所以面对的数以亿计的数据就需要一种集成化的编程语言来使用。而且Python这门编程语言集成的很多图形库可以直接讲数据以数据分布图的方式展示出来。不仅仅在数据统计和处理,在很多高校的实验室里面提取的大量的实验数据也需要整理和归纳,Python也能起到非常大的作用。
4、网站后台
能够处理网站后台的主流编程语言主要还是Java和php,微软的.net也可以。Python作为集成化编程语言制作起来也能很好的提升效率,已经有很多创业公司在选择制作后台网站的时候已经有意识地向Python靠拢了,增加了网站后台的编程语言的开发方向。
以上就是分享的Python语言用到最多的几个大方向。当下Python的发展前景是十分广阔的,学完Python后,就业方向还是很广泛的。
⑵ ubuntu|linux下 如何用python 模拟按键
ubuntu下,也就是linux下,通常会用kill -事件编号实现。 你查一下LINUX下的事件就明白了。
kill 进程号 实现上是发了一个信号给指定的进程。 在python里,也可以加载事件处理模块,处理来自其它程序发过来的信号, 当然你可以用KILL工具发信号过来。
ctrl+d也是一个信号,ctrl+c也是一个。具体信号编码我不记得了。不过以前我做多进程管理时就是使用这个方法。 好象信号还可以带参数过来。
你打开python的帮助。看看signal这个模块。我把它的例子拿过来。对你有用不
importsignal,os
defhandler(signum,frame):
print'Signalhandlercalledwithsignal',signum
raiseIOError("Couldn'topendevice!")
#Setthesignalhandleranda5-secondalarm
signal.signal(signal.SIGALRM,handler)
signal.alarm(5)
#Thisopen()mayhangindefinitely
fd=os.open('/dev/ttyS0',os.O_RDWR)
signal.alarm(0)#Disablethealarm
下面是我找到的一些资料。也许有用。
信号的概念
信号(signal)--进程之间通讯的方式,是一种软件中断。一个进程一旦接收到信号就会打断原来的程序执行流程来处理信号。
几个常用信号:
SIGINT终止进程中断进程(control+c)
SIGTERM终止进程软件终止信号
SIGKILL终止进程杀死进程
SIGALRM闹钟信号
进程结束信号SIGTERM和SIGKILL的区别
SIGTERM比较友好,进程能捕捉这个信号,根据您的需要来关闭程序。在关闭程序之前,您可以结束打开的记录文件和完成正在做的任务。在某些情况下,假如进程正在进行作业而且不能中断,那么进程可以忽略这个SIGTERM信号。
对于SIGKILL信号,进程是不能忽略的。这是一个“我不管您在做什么,立刻停止”的信号。假如您发送SIGKILL信号给进程,Linux就将进程停止在那里。
发送信号一般有两种原因:
1(被动式)内核检测到一个系统事件.例如子进程退出会像父进程发送SIGCHLD信号.键盘按下control+c会发送SIGINT信号
2(主动式)通过系统调用kill来向指定进程发送信号
linux操作系统提供的信号
[100003@oss235 myppt]$ kill -l
1) SIGHUP2) SIGINT3) SIGQUIT4) SIGILL
5) SIGTRAP6) SIGABRT7) SIGBUS8) SIGFPE
9) SIGKILL10) SIGUSR111) SIGSEGV12) SIGUSR2
13) SIGPIPE14) SIGALRM15) SIGTERM16) SIGSTKFLT
17) SIGCHLD18) SIGCONT19) SIGSTOP20) SIGTSTP
21) SIGTTIN22) SIGTTOU23) SIGURG24) SIGXCPU
25) SIGXFSZ26) SIGVTALRM27) SIGPROF28) SIGWINCH
29) SIGIO30) SIGPWR31) SIGSYS34) SIGRTMIN
35) SIGRTMIN+136) SIGRTMIN+237) SIGRTMIN+338) SIGRTMIN+4
39) SIGRTMIN+540) SIGRTMIN+641) SIGRTMIN+742) SIGRTMIN+8
43) SIGRTMIN+944) SIGRTMIN+10 45) SIGRTMIN+11 46) SIGRTMIN+12
47) SIGRTMIN+13 48) SIGRTMIN+14 49) SIGRTMIN+15 50) SIGRTMAX-14
51) SIGRTMAX-13 52) SIGRTMAX-12 53) SIGRTMAX-11 54) SIGRTMAX-10
55) SIGRTMAX-956) SIGRTMAX-857) SIGRTMAX-758) SIGRTMAX-6
59) SIGRTMAX-560) SIGRTMAX-461) SIGRTMAX-362) SIGRTMAX-2
63) SIGRTMAX-164) SIGRTMAX
Python提供的信号
Python 2.4.3 (#1, Jun 11 2009, 14:09:58)
[GCC 4.1.2 20080704 (Red Hat 4.1.2-44)] on linux2
Type "help", "right", "credits" or "license" for more information.
>>> import signal
>>> dir(signal)
['NSIG', 'SIGABRT', 'SIGALRM', 'SIGBUS', 'SIGCHLD', 'SIGCLD',
'SIGCONT', 'SIGFPE', 'SIGHUP', 'SIGILL', 'SIGINT', 'SIGIO', 'SIGIOT',
'SIGKILL', 'SIGPIPE', 'SIGPOLL', 'SIGPROF', 'SIGPWR', 'SIGQUIT',
'SIGRTMAX', 'SIGRTMIN', 'SIGSEGV', 'SIGSTOP', 'SIGSYS', 'SIGTERM',
'SIGTRAP', 'SIGTSTP', 'SIGTTIN', 'SIGTTOU', 'SIGURG', 'SIGUSR1',
'SIGUSR2', 'SIGVTALRM', 'SIGWINCH', 'SIGXCPU', 'SIGXFSZ', 'SIG_DFL',
'SIG_IGN', '__doc__', '__name__', 'alarm', 'default_int_handler',
'getsignal', 'pause', 'signal']
操作系统规定了进程收到信号以后的默认行为
但是,我们可以通过绑定信号处理函数来修改进程收到信号以后的行为
有两个信号是不可更改的SIGTOP和SIGKILL
绑定信号处理函数
import os
import signal
from time import sleep
def onsignal_term(a,b):
print '收到SIGTERM信号'
#这里是绑定信号处理函数,将SIGTERM绑定在函数onsignal_term上面
signal.signal(signal.SIGTERM,onsignal_term)
def onsignal_usr1(a,b):
print '收到SIGUSR1信号'
#这里是绑定信号处理函数,将SIGUSR1绑定在函数onsignal_term上面
signal.signal(signal.SIGUSR1,onsignal_usr1)
while 1:
print '我的进程id是',os.getpid()
sleep(10)
运行该程序。然后通过另外一个进程来发送信号。
发送信号
发送信号的代码如下:
import os
import signal
#发送信号,16175是前面那个绑定信号处理函数的pid,需要自行修改
os.kill(16175,signal.SIGTERM)
#发送信号,16175是前面那个绑定信号处理函数的pid,需要自行修改
os.kill(16175,signal.SIGUSR1)
⑶ Linux查看版本命令问题
Linux下查看版本号的命令
1,查看内核版本命令:
cat /proc/version
uname -a
uname -rcat /etc/issue
man uname
2,查看linux版本:抄录如下:
1) 登录到服务器执行 lsb_release -a ,即可列出所有版本信息,例如:
[[email protected] ~]# lsb_release -a
LSB Version: 1.3
Distributor ID: RedHatEnterpriseAS
Descrīption: Red Hat Enterprise Linux AS release 4 (Nahant Update 1)
Release: 4
Codename: NahantUpdate1
[[email protected] ~]#
这个命令适用于所有的linux,包括Redhat、SuSE、Debian等发行版。
2) 登录到linux执行cat /etc/redhat-release ,例如如下:
[[email protected] ~]# cat /etc/redhat-release
Red Hat Enterprise Linux AS release 4 (Nahant Update 1)
[[email protected] ~]#
这种方式下可以直接看到具体的版本号,比如 AS4 Update 1
3)登录到linux执行rpm -q redhat-release ,例如如下
[[email protected] ~]# rpm -q redhat-release
redhat-release-4AS-2.4
[[email protected] ~]#
这种方式下可看到一个所谓的release号,比如上边的例子是2.4
这个release号和实际的版本之间存在一定的对应关系,如下:
redhat-release-3AS-1 -> Redhat Enterprise Linux AS 3
redhat-release-3AS-7.4 -> Redhat Enterprise Linux AS 3 Update 4
redhat-release-4AS-2 -> Redhat Enterprise Linux AS 4
redhat-release-4AS-2.4 -> Redhat Enterprise Linux AS 4 Update 1
redhat-release-4AS-3 -> Redhat Enterprise Linux AS 4 Update 2
redhat-release-4AS-4.1 -> Redhat Enterprise Linux AS 4 Update 3
redhat-release-4AS-5.5 -> Redhat Enterprise Linux AS 4 Update 4
更多Linux知识可参考书籍《Linux就该这么学》。
⑷ linux下的python ide怎么设置tab补全
在Python模式交互下,tab自动补全会提高代码效率,通过以下步骤可以很方便的实现自动补全。
1.获取操作目录
[root@liu site-packages]# pythonPython 2.6.6 (r266:84292, Nov 22 2013, 12:16:22)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-4)] on linux2
Type "help", "right", "credits" or "license" for more information.>>> import sys>>> sys.path
['', '/usr/lib64/python26.zip', '/usr/lib64/python2.6', '/usr/lib64/python2.6/plat-linux2', '/usr/lib64/python2.6/lib-tk', '/usr/lib64/python2.6/lib-old', '/usr/lib64/python2.6/lib-dynload', '/usr/lib64/python2.6/site-packages', '/usr/lib64/python2.6/site-packages/gtk-2.0', '/usr/lib/python2.6/site-packages']>>> 123456789
可以看出,我的工作目录是/usr/lib/python2.6/site-packages/。
2.进入工作目录,编写tab.py补全文件
[root@liu site-packages]# cd /usr/lib/python2.6/site-packages/[root@liu site-packages]# vim tab.py 123
tab.py内容如下,建议粘贴的时候保证格式正确性
1 #!/usr/bin/python
2 # python tab file
3 import sys 4 import readline 5 import rlcompleter 6 import atexit 7 import os 8 # tab completion
9 readline.parse_and_bind('tab: complete') 10 # history file
11 histfile = os.path.join(os.environ['HOME'], '.pythonhistory') 12 try: 13 readline.read_history_file(histfile) 14 except IOError: 15 pass
16 atexit.register(readline.write_history_file, histfile) 17
18 del os, histfile, readline,
3.添加环境变量,使其生效
[root@liu site-packages]# cd [root@liu ~]# vim .bashrc123
在末尾添加一行
export PYTHONSTARTUP=/usr/lib/python2.6/site-packages/tab.py1
4.重读.bashrc文件
source .bashrc1
或者
. .bashrc1
5.测试效果
[root@liu ~]# python
Python 2.6.6 (r266:84292, Nov 22 2013, 12:16:22)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-4)] on linux2
Type "help", "right", "credits" or "license" for more information.
>>> import math>>> math.math.__class__( math.acos( math.fsum(math.__delattr__( math.acosh( math.hypot(math.__dict__ math.asin( math.isinf(math.__doc__ math.asinh( math.isnan(math.__file__ math.atan( math.ldexp(math.__format__( math.atan2( math.log(math.__getattribute__( math.atanh( math.log10(math.__hash__( math.ceil( math.log1p(math.__init__( math.sign( math.modf(math.__name__ math.cos( math.pimath.__new__( math.cosh( math.pow(math.__package__ math.degrees( math.radians(math.__rece__( math.e math.sin(math.__rece_ex__( math.exp( math.sinh(math.__repr__( math.fabs( math.sqrt(math.__setattr__( math.factorial( math.tan(math.__sizeof__( math.floor( math.tanh(math.__str__( math.fmod( math.trunc(math.__subclasshook__( math.frexp(
>>> math.
完成。我一开始一直报错,然后通过排查就是因为tab.py格式不正确。注意其格式。
⑸ 学python可以做什么工作
Python作为人工智能时代的主流编程语言,受到越来越多人的青睐,因此,不少人想要学习Python加入人工智能行业。
学完Python做人工智能开发
人工智能的发展潜力和钱途就不说了吧,这个是大家都知道的,Python作为人工智能时代的最佳编程语言,其魅力和发展前景毋庸置疑。
学完Python做服务器运维
运维也不陌生,最开始一批学习Python的人,就是运维和测试的在职人员,因为Python对于他们的工作起到很大的作用,因为使用Python脚本进行批量化的文件部署和运行调整都成了Linux服务器上很不错的选择。
学完Python做数据分析
在互联网上,你经常会发现自己搜索了某样东西后,系统会根据你的搜索推荐类似的品类给你,这就是大数据的强大之处。而Python所拥有的完整的生态环境十分有利于进行数据分析处理,比如,"大数据"分析所需要的分布式计算、数据可视化、数据库操作等,都可以通过Python中的十分成熟的模块完成。
学完Python做云计算开发
Python是从事云计算工作需要掌握的一门编程语言,目前很火的云计算框架OpenStack就是由Python开发的,如果想要深入学习并进行二次开发,就需要具备Python的技能。
学完Python做游戏开发
在网络游戏开发中,Python也有很多应用,相比于Lua or C++,Python比Lua有更高阶的抽象能力,可以用更少的代码描述游戏业务逻辑,Python非常适合编写1万行以上的项目,而且能够很好的把网游项目的规模控制在10万行代码以内。
所以说学完Python后从事的方向不少,对于现在想学习Python的人来说是一个非常不错的选择。