像我儿子一样永远保持好奇和梦想

Python that you should know

上一篇 / 下一篇  2012-07-02 15:40:48 / 个人分类:practic_linux

What is Python anyway?
| dy_+qg/{f7P0----------------------
&J#VK9~)I9K0v#f0ET创芯网(EETOP)-电子设计论坛、博客、超人气的电子工程师资料分享平台hV[az*\-p
Python is an interpreted, interactive object-oriented programmingET创芯网(EETOP)-电子设计论坛、博客、超人气的电子工程师资料分享平台9QKKn |
language suitable (amongst other uses) for distributed application
s0`b5^"Z`_ i0development, scripting, numeric computing and system testing.  PythonET创芯网(EETOP)-电子设计论坛、博客、超人气的电子工程师资料分享平台7e2{0q/RR#g^!z l
is often compared to Tcl, Perl, Java, JavaScript, Visual Basic or
w US Ws0Scheme.  To find out more about what Python can do for you, point your
hF4MD!^0\0browser to http://www.python.org/.ET创芯网(EETOP)-电子设计论坛、博客、超人气的电子工程师资料分享平台p&@K ]7N&`

G c`+Jc-Ilc}0
1Op|+U)Tu@W2g0How do I learn Python?
0Y {jv {Os0----------------------
V Ur1b;Euv;Bw0ET创芯网(EETOP)-电子设计论坛、博客、超人气的电子工程师资料分享平台S ^-n'me:`~B2`
The official tutorial is still a good place to start; seeET创芯网(EETOP)-电子设计论坛、博客、超人气的电子工程师资料分享平台c,Smm0y
http://docs.python.org/ for online and downloadable versions, as wellET创芯网(EETOP)-电子设计论坛、博客、超人气的电子工程师资料分享平台+z)O(HF(as
as a list of other introductions, and reference documentation.
9J5vp4c(_Ga6r:v0
\pL ]3f;Dm m9`o0There's a quickly growing set of books on Python.  See
Z8TIQ5o0WG0http://wiki.python.org/moin/PythonBooks for a list.ET创芯网(EETOP)-电子设计论坛、博客、超人气的电子工程师资料分享平台Db/L)C%y"f$e&@?
请参考ref 1
F3QIj2R(t,J-|0
build and installET创芯网(EETOP)-电子设计论坛、博客、超人气的电子工程师资料分享平台5Sh C8J,qA&T"AZm1k
just download from the python website then check the readme as following :ET创芯网(EETOP)-电子设计论坛、博客、超人气的电子工程师资料分享平台cw4vaNM

w ntzG0Build instructionsET创芯网(EETOP)-电子设计论坛、博客、超人气的电子工程师资料分享平台GX,T1P{)R7@(A
==================
&o'}M9mK'gEF0ET创芯网(EETOP)-电子设计论坛、博客、超人气的电子工程师资料分享平台9fQ(AB Ks%N
Before you can build Python, you must first configure it.ET创芯网(EETOP)-电子设计论坛、博客、超人气的电子工程师资料分享平台|"_0@0IJ#s\
Fortunately, the configuration and build process has been automated
U(?jK/C:|Nt0for Unix and Linux installations, so all you usually have to do isET创芯网(EETOP)-电子设计论坛、博客、超人气的电子工程师资料分享平台k9n:q.o0k#WC:E i`
type a few commands and sit back.  There are some platforms where
2@2O|G(qV#m0things are not quite as smooth; see the platform. specific notes below.
!D?`n}&\2?H0If you want to build for multiple platforms sharing the same source
5QR0y*]~#}h0tree, see the section on VPATH below.
!G!a%T5x.n3yi/@0
7klK*Gx0Start by running the script. "./configure", which determines yourET创芯网(EETOP)-电子设计论坛、博客、超人气的电子工程师资料分享平台b(l#P hT,t$Iw
system configuration and creates the Makefile.  (It takes a minute or
k @ Knl0Ql#^0two -- please be patient!)  You may want to pass options to the
}k-h:s+fC~'Hy0configure script. -- see the section below on configuration options andET创芯网(EETOP)-电子设计论坛、博客、超人气的电子工程师资料分享平台i_-?8kP0b W
variables.  When it's done, you are ready to run make.
?.g nnQS9n0
o4Q*qs4M6R-LIX r0To build Python, you normally type "make" in the toplevel directory.
'o d| ^!u|0If you have changed the configuration, the Makefile may have to be
?'[Fj8V$G0rebuilt.  In this case, you may have to run make again to correctly
4U1L ZS/L|b0build your desired target.  The interpreter executable is built in theET创芯网(EETOP)-电子设计论坛、博客、超人气的电子工程师资料分享平台xb%]&_#D YC
top level directory.
[WVvH0
$LE#T*h:A,ly MZ1E0Once you have built a Python interpreter, see the subsections below on
testing and installation.  If you run into trouble, see the next
5p(MA D(vQ0section.
Z{2p-lF0
.lJ.z$A vuV:U$G:A0Previous versions of Python used a manual configuration process that
9@S)rF6Z Ap0involved editing the file Modules/Setup.  While this file still exists
%_{Q)[#@ J0and manual configuration is still supported, it is rarely needed any
#a l H&O7Q0more: almost all modules are automatically built as appropriate under
#\&Mvn"vf p5Ss0guidance of the setup.py script, which is run by Make after the
U#@1z FJ0interpreter has been built.ET创芯网(EETOP)-电子设计论坛、博客、超人气的电子工程师资料分享平台-y NKIPWm

【hsy75案】practice install:ET创芯网(EETOP)-电子设计论坛、博客、超人气的电子工程师资料分享平台'}(JC^uc3J-O:p
1 ./configure ET创芯网(EETOP)-电子设计论坛、博客、超人气的电子工程师资料分享平台"{B ~1cx(Y
franklin@franklin-LifeBook-S-Series:/tmp$ cd Python-2.7.3/
}5W bb:MA,~5G0franklin@franklin-LifeBook-S-Series:/tmp/Python-2.7.3$ ls
uN!UQ@hw7W0configure     Demo  Grammar  install-sh  LICENSE  Makefile.pre.in  Modules  Parser  PCbuild        Python  RISCOS    ToolsET创芯网(EETOP)-电子设计论坛、博客、超人气的电子工程师资料分享平台8s9E1?2c0_!S
configure.in  Doc   Include  Lib         Mac      Misc             Objects  PC      pyconfig.h.in  README  setup.pyET创芯网(EETOP)-电子设计论坛、博客、超人气的电子工程师资料分享平台t*z } M z~A
franklin@franklin-LifeBook-S-Series:/tmp/Python-2.7.3$ ./configure
M nYb'L9M0checking for --enable-universalsdk... no
c*Tx&\,M0checking for --with-universal-archs... 32-bitET创芯网(EETOP)-电子设计论坛、博客、超人气的电子工程师资料分享平台.R9[pK'E
checking MACHDEP... linux2ET创芯网(EETOP)-电子设计论坛、博客、超人气的电子工程师资料分享平台3N;D[!T i']y
checking EXTRAPLATDIR... ET创芯网(EETOP)-电子设计论坛、博客、超人气的电子工程师资料分享平台%r|C ZCd e
checking machine type as reported by uname -m... i686
\e{T [h,xE0checking for --without-gcc... noET创芯网(EETOP)-电子设计论坛、博客、超人气的电子工程师资料分享平台'x V.i/D){8ej5u
checking for gcc... gccET创芯网(EETOP)-电子设计论坛、博客、超人气的电子工程师资料分享平台ZG J:FC!_Cm
checking whether the C compiler works... yesET创芯网(EETOP)-电子设计论坛、博客、超人气的电子工程师资料分享平台!txtj!b }.W~T
checking for C compiler default output file name... a.out
?uPe+Bij2e0checking for suffix of executables...
9t#At|z0checking whether we are cross compiling... noET创芯网(EETOP)-电子设计论坛、博客、超人气的电子工程师资料分享平台9Sz j$CC[|
checking for suffix of object files... oET创芯网(EETOP)-电子设计论坛、博客、超人气的电子工程师资料分享平台$?kRdj{/S
checking whether we are using the GNU C compiler... yes
i4G~e p3aU'l%r\|0checking whether gcc accepts -g... yesET创芯网(EETOP)-电子设计论坛、博客、超人气的电子工程师资料分享平台"Z}oOB
checking for gcc option to accept ISO C89... none needed
4`W2ZN7e0checking for --with-cxx-main=<compiler>... no
6Yx ~N\zByVe#y0checking for g++... g++
Wv'|J8wy9o0configure: WARNING:ET创芯网(EETOP)-电子设计论坛、博客、超人气的电子工程师资料分享平台6M%c+N/t9K v
........ET创芯网(EETOP)-电子设计论坛、博客、超人气的电子工程师资料分享平台%H H_ m C+M5U%L
ET创芯网(EETOP)-电子设计论坛、博客、超人气的电子工程师资料分享平台0Z ^*xk9m l
2 make
5G P1f8VPD03 make test
$I(|%Bk|$^4ZY:C@j0
rq1a3yl F0ET创芯网(EETOP)-电子设计论坛、博客、超人气的电子工程师资料分享平台#f!p4T"a7F9SP

【hsy75案】Python的設計哲學是“優雅”、“明確”、“簡單”。因此,Perl語言中“總是有多種方法來做同一件事”的理念在Python開發者中通常是難以忍受的。
o4p7gs~*mnk0Python開發者的哲學是“用一種方法,最好是只有一種方法來做一件事”。
3Q~fC0T(fVGn0而 perl : There's More Than One Way To Do It.(不只一种方法來做这件事。)
.Vx5\_0g0[hsy75]所以说一般来讲,是一个矛盾的选择ET创芯网(EETOP)-电子设计论坛、博客、超人气的电子工程师资料分享平台z-r ET"a!z

ET创芯网(EETOP)-电子设计论坛、博客、超人气的电子工程师资料分享平台N5fR$?7Ug h'H

为什么不使用Perl?

ET创芯网(EETOP)-电子设计论坛、博客、超人气的电子工程师资料分享平台Am8iC-dv

也许你以前并不知道,Perl是另外一种极其流行的开源解释性编程语言。

(K E*Xk9e3XK!OlB8g0 ET创芯网(EETOP)-电子设计论坛、博客、超人气的电子工程师资料分享平台'N5~cy[.T7wQ-_}

如果你曾经尝试过用Perl语言编写一个大程序,你一定会自己回答这个问题。在规模较小的时候,Perl程序是简单的。它可以胜任于小型的应用程序 和脚本,“使工作完成”。然而,当你想开始写一些大一点的程序的时候,Perl程序就变得不实用了。我是通过为Yahoo编写大型Perl程序的经验得出 这样的总结的!

a}_/Uh,f0 ET创芯网(EETOP)-电子设计论坛、博客、超人气的电子工程师资料分享平台C#S5Jw.{}j9z$s|,G

与Perl相比,Python程序一定会更简单、更清晰、更易于编写,从而也更加易懂、易维护。我确实也很喜欢Perl,用它来做一些日常的各种事 情。不过当我要写一个程序的时候,我总是想到使用Python,这对我来说已经成了十分自然的事。Perl已经经历了多次大的修正和改变,遗憾的是,即将 发布的Perl 6似乎仍然没有在这个方面做什么改进。

B9a V*xLX@:g?0 ET创芯网(EETOP)-电子设计论坛、博客、超人气的电子工程师资料分享平台2\WaB |

我感到Perl唯一也是十分重要的优势是它庞大的CPAN库——综合Perl存档网络。就如同这个名字所指的意思一样,这是一个巨大的Perl模块集,它大得让人难以置信——你几乎用这些模块在计算机上做任何事情。Perl的模块比Python多的原因之一是Perl拥有更加悠久的历史。或许我会在comp.lang.python上建议把Perl模块移植到Python上的计划。ET创芯网(EETOP)-电子设计论坛、博客、超人气的电子工程师资料分享平台 lU s$T L C2I y

fe+t;C,z5z T@0另外,新的Parrot虚拟机按设计可以运行完全重新设计的Perl 6也可以运行Python和其他解释性语言如Ruby、PHP和Tcl等等。这意味着你将来 或许 可以在Python上使用所有Perl的模块。这将成为两全其美的事——强大的CPAN库与强大的Python语言结合在一起。我们将拭目以待。

q*@a rT9qZ7S0 ET创芯网(EETOP)-电子设计论坛、博客、超人气的电子工程师资料分享平台%? S:^:J!si6c

ref:
i#{Go6{E01 http://woodpecker.org.cn/abyteofpython_cn/chinese/ET创芯网(EETOP)-电子设计论坛、博客、超人气的电子工程师资料分享平台UM}%{~ {|DK
2 http://zh.wikipedia.org/wiki/PythonET创芯网(EETOP)-电子设计论坛、博客、超人气的电子工程师资料分享平台(k4ok sdbp
3 http://www.python.org/getit/
kx+n)x*rSr2_&_,h4_0
&y(aR.h#x-~0ET创芯网(EETOP)-电子设计论坛、博客、超人气的电子工程师资料分享平台[ t6S{dJ+z/_
ET创芯网(EETOP)-电子设计论坛、博客、超人气的电子工程师资料分享平台2^/hNc%SyJ
中国电子顶级开发网--电子设计论坛、博客、超人气的电子工程师资料分享平台k

TAG: python

 

评分:0

我来说两句

显示全部

:loveliness: :handshake :victory: :funk: :time: :kiss: :call: :hug: :lol :'( :Q :L ;P :$ :P :o :@ :D :( :)

Open Toolbar