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

Python that you should know

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

What is Python anyway?
2p b xK'k?7{0----------------------ET创芯网(EETOP)-电子设计威尼斯人网址、博客、超人气的电子工程师资料分享平台 ` iHxP$v

(e:@6h1@} ~f tn6?:k:`0Python is an interpreted, interactive object-oriented programmingET创芯网(EETOP)-电子设计威尼斯人网址、博客、超人气的电子工程师资料分享平台(lbt%_D]C2q D
language suitable (amongst other uses) for distributed application
5v d#Y#t5[\0development, scripting, numeric computing and system testing.  Python
O.o,?X M3V8]0is often compared to Tcl, Perl, Java, JavaScript, Visual Basic orET创芯网(EETOP)-电子设计威尼斯人网址、博客、超人气的电子工程师资料分享平台%uYO _/U(zSve!Cd:`
Scheme.  To find out more about what Python can do for you, point your
'P:L5M qa(E0browser to http://www.python.org/.
3ClO$dwF+g0
W9e [5Y;D+Vpw]0
|-Uu0}(g6q0How do I learn Python?
r%OF|8e1}'V4eVJ0----------------------ET创芯网(EETOP)-电子设计威尼斯人网址、博客、超人气的电子工程师资料分享平台%yU3btT ?n

9V~ m B HE(F0The official tutorial is still a good place to start; see
]"[:NM"Z0http://docs.python.org/ for online and downloadable versions, as well
}*w%I Q%C+E N/f%_0as a list of other introductions, and reference documentation.ET创芯网(EETOP)-电子设计威尼斯人网址、博客、超人气的电子工程师资料分享平台'VeRz R2A5C7D#Ca
ET创芯网(EETOP)-电子设计威尼斯人网址、博客、超人气的电子工程师资料分享平台:Y?W(CI
There's a quickly growing set of books on Python.  SeeET创芯网(EETOP)-电子设计威尼斯人网址、博客、超人气的电子工程师资料分享平台F4hcc_,~s
http://wiki.python.org/moin/PythonBooks for a list.
j$Tl|x jX|)y0请参考ref 1 ET创芯网(EETOP)-电子设计威尼斯人网址、博客、超人气的电子工程师资料分享平台:d-UWv;j

build and installET创芯网(EETOP)-电子设计威尼斯人网址、博客、超人气的电子工程师资料分享平台']g|:BV
just download from the python website then check the readme as following :
w&g:h*c!\)s,Q0ET创芯网(EETOP)-电子设计威尼斯人网址、博客、超人气的电子工程师资料分享平台Jo%bx)f+s;J
Build instructionsET创芯网(EETOP)-电子设计威尼斯人网址、博客、超人气的电子工程师资料分享平台 j*I7R:ZrJ4P
==================ET创芯网(EETOP)-电子设计威尼斯人网址、博客、超人气的电子工程师资料分享平台b3D?0E9b

*CX%C B i#Sb5G0Before you can build Python, you must first configure it.
7f"J:X\D0Fortunately, the configuration and build process has been automatedET创芯网(EETOP)-电子设计威尼斯人网址、博客、超人气的电子工程师资料分享平台'K.c(M:g/a%O7V
for Unix and Linux installations, so all you usually have to do isET创芯网(EETOP)-电子设计威尼斯人网址、博客、超人气的电子工程师资料分享平台 k-bj7E[La'D2MY_
type a few commands and sit back.  There are some platforms whereET创芯网(EETOP)-电子设计威尼斯人网址、博客、超人气的电子工程师资料分享平台*{?4E/z/t*uE
things are not quite as smooth; see the platform. specific notes below.ET创芯网(EETOP)-电子设计威尼斯人网址、博客、超人气的电子工程师资料分享平台 P zHy*rWP,B_"r-C
If you want to build for multiple platforms sharing the same sourceET创芯网(EETOP)-电子设计威尼斯人网址、博客、超人气的电子工程师资料分享平台 G:GY/f4^
tree, see the section on VPATH below.
#|(}JHb%uYC0
A'U$i&v8BL3Q0Start by running the script. "./configure", which determines your
6vw;}IH$fv0system configuration and creates the Makefile.  (It takes a minute orET创芯网(EETOP)-电子设计威尼斯人网址、博客、超人气的电子工程师资料分享平台UO&pbAL7X fn
two -- please be patient!)  You may want to pass options to theET创芯网(EETOP)-电子设计威尼斯人网址、博客、超人气的电子工程师资料分享平台{4y$Tcp:V cL+O
configure script. -- see the section below on configuration options andET创芯网(EETOP)-电子设计威尼斯人网址、博客、超人气的电子工程师资料分享平台6Wyh$Es:ev
variables.  When it's done, you are ready to run make.ET创芯网(EETOP)-电子设计威尼斯人网址、博客、超人气的电子工程师资料分享平台{,m$v8`1F
ET创芯网(EETOP)-电子设计威尼斯人网址、博客、超人气的电子工程师资料分享平台Z3T7e;Z;u4_bH
To build Python, you normally type "make" in the toplevel directory.
SG$fcm P7KO(E/e0If you have changed the configuration, the Makefile may have to beET创芯网(EETOP)-电子设计威尼斯人网址、博客、超人气的电子工程师资料分享平台T!vXQo1Y3c
rebuilt.  In this case, you may have to run make again to correctlyET创芯网(EETOP)-电子设计威尼斯人网址、博客、超人气的电子工程师资料分享平台!cf4_0?ju#uc1b!c'r
build your desired target.  The interpreter executable is built in theET创芯网(EETOP)-电子设计威尼斯人网址、博客、超人气的电子工程师资料分享平台9{9?A"RA"WP)B
top level directory.
r]B A+xK!z0`0
[4HnnU0Once you have built a Python interpreter, see the subsections below on
testing and installation.  If you run into trouble, see the next
'sv8@1G4EEY0section.
y0L3JP7Z%l0ET创芯网(EETOP)-电子设计威尼斯人网址、博客、超人气的电子工程师资料分享平台U3t7nH z
Previous versions of Python used a manual configuration process thatET创芯网(EETOP)-电子设计威尼斯人网址、博客、超人气的电子工程师资料分享平台I"k*g*h/h
involved editing the file Modules/Setup.  While this file still existsET创芯网(EETOP)-电子设计威尼斯人网址、博客、超人气的电子工程师资料分享平台LZGZ Br M
and manual configuration is still supported, it is rarely needed any
T*b0H,zZN g-b;]c3K0more: almost all modules are automatically built as appropriate under
d iI|;f a#U:s.h0guidance of the setup.py script, which is run by Make after the
8| j*r7J%M V0interpreter has been built.ET创芯网(EETOP)-电子设计威尼斯人网址、博客、超人气的电子工程师资料分享平台-g#z$u&M$d0c'`

【hsy75案】practice install:
(fb3mq7P#v?Q``01 ./configure
S&hk z\ Wa8[0franklin@franklin-LifeBook-S-Series:/tmp$ cd Python-2.7.3/
~;yp!A1j${[R0franklin@franklin-LifeBook-S-Series:/tmp/Python-2.7.3$ ls
} W:kY%SGGX#n0configure     Demo  Grammar  install-sh  LICENSE  Makefile.pre.in  Modules  Parser  PCbuild        Python  RISCOS    Tools
%@LJyrW0configure.in  Doc   Include  Lib         Mac      Misc             Objects  PC      pyconfig.h.in  README  setup.py
T Ny#qv$?+Fn0franklin@franklin-LifeBook-S-Series:/tmp/Python-2.7.3$ ./configure
a7Qs1oo0checking for --enable-universalsdk... no
y,LC/ztn [0checking for --with-universal-archs... 32-bit
#o!G~R+v,H AE0checking MACHDEP... linux2ET创芯网(EETOP)-电子设计威尼斯人网址、博客、超人气的电子工程师资料分享平台~(f:C;E v$`B!~
checking EXTRAPLATDIR... ET创芯网(EETOP)-电子设计威尼斯人网址、博客、超人气的电子工程师资料分享平台LR6SlkAT:K3NUR
checking machine type as reported by uname -m... i686ET创芯网(EETOP)-电子设计威尼斯人网址、博客、超人气的电子工程师资料分享平台5nB p8Qe"d*R'w"Cn
checking for --without-gcc... noET创芯网(EETOP)-电子设计威尼斯人网址、博客、超人气的电子工程师资料分享平台+H/K |*e)}4i@E
checking for gcc... gccET创芯网(EETOP)-电子设计威尼斯人网址、博客、超人气的电子工程师资料分享平台]X't5}ex;K9t
checking whether the C compiler works... yes
Y:\uDW0checking for C compiler default output file name... a.out
B0C3w;{'\fJ9x0checking for suffix of executables... ET创芯网(EETOP)-电子设计威尼斯人网址、博客、超人气的电子工程师资料分享平台N,catC\-|7]}
checking whether we are cross compiling... noET创芯网(EETOP)-电子设计威尼斯人网址、博客、超人气的电子工程师资料分享平台!u/H\h4D#eFy"`i
checking for suffix of object files... o
];W,cw];B|H0checking whether we are using the GNU C compiler... yesET创芯网(EETOP)-电子设计威尼斯人网址、博客、超人气的电子工程师资料分享平台 pt q,cX#[%T
checking whether gcc accepts -g... yesET创芯网(EETOP)-电子设计威尼斯人网址、博客、超人气的电子工程师资料分享平台;}kw*QR2`4R J
checking for gcc option to accept ISO C89... none neededET创芯网(EETOP)-电子设计威尼斯人网址、博客、超人气的电子工程师资料分享平台.K7BE,f7d(M
checking for --with-cxx-main=<compiler>... noET创芯网(EETOP)-电子设计威尼斯人网址、博客、超人气的电子工程师资料分享平台8N^*WK2q f*P
checking for g++... g++
4^j3} Z|9O0configure: WARNING:
W%a+h{!LF}X[ e0........ET创芯网(EETOP)-电子设计威尼斯人网址、博客、超人气的电子工程师资料分享平台/m$`y+Y P5O
ET创芯网(EETOP)-电子设计威尼斯人网址、博客、超人气的电子工程师资料分享平台@'Y}%nY^
2 makeET创芯网(EETOP)-电子设计威尼斯人网址、博客、超人气的电子工程师资料分享平台-t)V"VI$GP7L
3 make test
)W;A+TK^ [ n0ET创芯网(EETOP)-电子设计威尼斯人网址、博客、超人气的电子工程师资料分享平台G!@ x7ZO

1Yi+?N i:lxz0
【hsy75案】Python的設計哲學是“優雅”、“明確”、“簡單”。因此,Perl語言中“總是有多種方法來做同一件事”的理念在Python開發者中通常是難以忍受的。
$j6xbE!D@9@O L$V0Python開發者的哲學是“用一種方法,最好是只有一種方法來做一件事”。
c#VB C6R T/F0而 perl : There's More Than One Way To Do It.(不只一种方法來做这件事。)ET创芯网(EETOP)-电子设计威尼斯人网址、博客、超人气的电子工程师资料分享平台9fDT+I,lI\ t5whT
[hsy75]所以说一般来讲,是一个矛盾的选择
!V z(p.w ?&N&A0

]#_!c'j^%Mr0

为什么不使用Perl?

ET创芯网(EETOP)-电子设计威尼斯人网址、博客、超人气的电子工程师资料分享平台O["`cW%SK#`'v

也许你以前并不知道,Perl是另外一种极其流行的开源解释性编程语言。ET创芯网(EETOP)-电子设计威尼斯人网址、博客、超人气的电子工程师资料分享平台ap C0knn!L8J

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

&ZV8w7{ sm,p+@0 ET创芯网(EETOP)-电子设计威尼斯人网址、博客、超人气的电子工程师资料分享平台['N'e)a3VGJ#E

与Perl相比,Python程序一定会更简单、更清晰、更易于编写,从而也更加易懂、易维护。我确实也很喜欢Perl,用它来做一些日常的各种事 情。不过当我要写一个程序的时候,我总是想到使用Python,这对我来说已经成了十分自然的事。Perl已经经历了多次大的修正和改变,遗憾的是,即将 发布的Perl 6似乎仍然没有在这个方面做什么改进。ET创芯网(EETOP)-电子设计威尼斯人网址、博客、超人气的电子工程师资料分享平台s7}4wx1{

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

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

Z_+z,}lPy6U0
yb0d f+H0
ref:ET创芯网(EETOP)-电子设计威尼斯人网址、博客、超人气的电子工程师资料分享平台BD(V&ll
1 http://woodpecker.org.cn/abyteofpython_cn/chinese/
8a9zdt]X/n02 http://zh.wikipedia.org/wiki/PythonET创芯网(EETOP)-电子设计威尼斯人网址、博客、超人气的电子工程师资料分享平台'K,@DN K:op2g
3 http://www.python.org/getit/ET创芯网(EETOP)-电子设计威尼斯人网址、博客、超人气的电子工程师资料分享平台V7R2_-I8S@
ET创芯网(EETOP)-电子设计威尼斯人网址、博客、超人气的电子工程师资料分享平台 cX2e2XwtZ+W
ET创芯网(EETOP)-电子设计威尼斯人网址、博客、超人气的电子工程师资料分享平台ibM2}-e8oo|
ET创芯网(EETOP)-电子设计威尼斯人网址、博客、超人气的电子工程师资料分享平台4ZKC$mL2^A
中国电子顶级开发网--电子设计威尼斯人网址、博客、超人气的电子工程师资料分享平台k

TAG: python

 

评分:0

我来说两句

显示全部

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

Open Toolbar
博聚网