﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>C++博客-4D星宇-随笔分类-python</title><link>http://www.cppblog.com/bloodbao/category/3958.html</link><description>c++</description><language>zh-cn</language><lastBuildDate>Tue, 20 May 2008 04:34:19 GMT</lastBuildDate><pubDate>Tue, 20 May 2008 04:34:19 GMT</pubDate><ttl>60</ttl><item><title>PYTHON下第二个程式</title><link>http://www.cppblog.com/bloodbao/archive/2007/04/04/21261.html</link><dc:creator>bloodbao</dc:creator><author>bloodbao</author><pubDate>Wed, 04 Apr 2007 12:52:00 GMT</pubDate><guid>http://www.cppblog.com/bloodbao/archive/2007/04/04/21261.html</guid><wfw:comment>http://www.cppblog.com/bloodbao/comments/21261.html</wfw:comment><comments>http://www.cppblog.com/bloodbao/archive/2007/04/04/21261.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/bloodbao/comments/commentRss/21261.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/bloodbao/services/trackbacks/21261.html</trackback:ping><description><![CDATA[<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><span style="color: #000000;">contact&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;{}<br>contact_list&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;[]<br></span><span style="color: #0000ff;">while</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">1</span><span style="color: #000000;">:<br>&nbsp;&nbsp;&nbsp;&nbsp;contact[</span><span style="color: #008000;">'</span><span style="color: #008000;">name']&nbsp;=&nbsp;raw_input("please&nbsp;input&nbsp;name:&nbsp;")</span><span style="color: #008000;"><br></span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;contact[</span><span style="color: #008000;">'</span><span style="color: #008000;">phone']&nbsp;=&nbsp;raw_input("please&nbsp;input&nbsp;phone&nbsp;number:&nbsp;")</span><span style="color: #008000;"><br></span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;contact_list.append(contact.copy())<br>&nbsp;&nbsp;&nbsp;&nbsp;go_on&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;raw_input(</span><span style="color: #000000;">"</span><span style="color: #000000;">continue?\n</span><span style="color: #000000;">"</span><span style="color: #000000;">)<br>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">if</span><span style="color: #000000;">&nbsp;go_on&nbsp;</span><span style="color: #000000;">==</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">"</span><span style="color: #000000;">yes</span><span style="color: #000000;">"</span><span style="color: #000000;">:<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;pass<br>&nbsp;&nbsp;&nbsp;&nbsp;elif&nbsp;go_on&nbsp;</span><span style="color: #000000;">==</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">"</span><span style="color: #000000;">no</span><span style="color: #000000;">"</span><span style="color: #000000;">:<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;break<br>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">else</span><span style="color: #000000;">:<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;print&nbsp;</span><span style="color: #000000;">"</span><span style="color: #000000;">you&nbsp;didn't&nbsp;say&nbsp;no\n</span><span style="color: #000000;">"</span><span style="color: #000000;"><br>i&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">1</span><span style="color: #000000;"><br></span><span style="color: #0000ff;">for</span><span style="color: #000000;">&nbsp;contact&nbsp;in&nbsp;contact_list:<br>&nbsp;&nbsp;&nbsp;&nbsp;print&nbsp;</span><span style="color: #000000;">"</span><span style="color: #000000;">%d:&nbsp;name=%s</span><span style="color: #000000;">"</span><span style="color: #000000;">&nbsp;%&nbsp;(i,&nbsp;contact[</span><span style="color: #008000;">'</span><span style="color: #008000;">name'])</span><span style="color: #008000;"><br></span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;print&nbsp;</span><span style="color: #000000;">"</span><span style="color: #000000;">%d:&nbsp;phone=%s</span><span style="color: #000000;">"</span><span style="color: #000000;">&nbsp;%&nbsp;(i,&nbsp;contact[</span><span style="color: #008000;">'</span><span style="color: #008000;">phone'])</span><span style="color: #008000;"><br></span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;i&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;i&nbsp;</span><span style="color: #000000;">+</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">1</span></div>
首先是回忆一下字符串<br>字符串既能够用""也能够用''。然后是很有特色的%操作，起到格式化字符串的作用，前面仅仅在字符串中有一个%s，现在有%d和%s两个，分别代表插入十进制数值和字符串于%x标记的位置处。<br><br>然后是列表<br>列表是顺序的序列，用append在后面附加，也能构用索引值索引。所以我们完全可以用一个变量保存len(contact_list)得到的长度，然后一个个的遍历，不过这里展示了另外一种非常方便的方法。而且值得注意的是append()中的参数，我使用了contact.copy()，你可以尝试着把copy()给去掉，观察结果你就知道了所谓的append是怎么干的了，特别是你对指针之类的东西很有感觉的话（但是在Python中是没有指针这个概念的）<br><br>再来看看字典<br>字典是键（key）和值（value）的对应组合成的无序的序列。所以你存的时候要指明键（name或者phone），而且取的时候也是一样的。<br><br>接下来是判断<br>if是很好用的，==表示判断两个是否相等，=表示把右边的赋给左边的。而且可以直接判断字符串是否相等，这个太方便了，如果你曾经用过strcpy()的话，就知道了。elif是表示else if的意思，如果if不满足就判断elif的条件是否满足，最后是到else中去。<br><br>循环是个主体<br>while和for都是循环。不过这里while就没什么说的了，又是很经典的while 1，死循环，然后必须在里面用break来跳出。for和C中的for是不一样的，for in才是一个完整的语句，指的是从一个能够逐一取值的序列中（比如list），一个一个的取出值赋给for后面指定的变量中，直到取空，循环结束。其实回想一般用C中的for的经历，也大体如此。而且你还可以用for i in range(1,100)来指定一个范围从多少到多少。可以说for in充分体现了python的体贴周到，用起来很直观，不会绕弯。<br><br>接下来就是运行了，大家慢慢调试吧。下次可能是讲异常处理，因为我觉得在深入到使用各种高级的要素之前，先要学会怎么去处理异常。最常见的异常应该是input()，然后你给出的输入是一个无法转换为数字的字符串了，那么我们就要来处理它。<br><img src ="http://www.cppblog.com/bloodbao/aggbug/21261.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/bloodbao/" target="_blank">bloodbao</a> 2007-04-04 20:52 <a href="http://www.cppblog.com/bloodbao/archive/2007/04/04/21261.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>在LINUX下学PYTHON</title><link>http://www.cppblog.com/bloodbao/archive/2007/04/04/21260.html</link><dc:creator>bloodbao</dc:creator><author>bloodbao</author><pubDate>Wed, 04 Apr 2007 12:50:00 GMT</pubDate><guid>http://www.cppblog.com/bloodbao/archive/2007/04/04/21260.html</guid><wfw:comment>http://www.cppblog.com/bloodbao/comments/21260.html</wfw:comment><comments>http://www.cppblog.com/bloodbao/archive/2007/04/04/21260.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/bloodbao/comments/commentRss/21260.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/bloodbao/services/trackbacks/21260.html</trackback:ping><description><![CDATA[以前在XP下学习装过PYTHON，不过时间久了，很多东西都忘光了！<br>现在得重新再来，我的平台是DEBIAN ETCH＋AMD 1G＋256M：<br>安装python和其它软件：aptitude install python python-tk(enter)<br>第一个程序：<br>from Tkinter import *<br>root = Tk()<br>w = Label(root, text="Hello, world!")<br>w.pack()<br>root.mainloop()<br>－－－－－－－－－－－－－－－－－－<br>还是解释一下<br>fromt Tkinter import *<br>是引入一个模块，这个模块用来创建GUI（Graphic User Interface）窗口<br>Tk()创建了一个主窗口<br>Label()创建一个标签<br>Label的第一个参数是root表明Label是在这个主窗口中的。<br>w.pack()是指用缺省的方式把Label放置在主窗口中<br>root.mainloop()开始了一个循环，是等待你的输入的循环。<br><br><br><img src ="http://www.cppblog.com/bloodbao/aggbug/21260.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/bloodbao/" target="_blank">bloodbao</a> 2007-04-04 20:50 <a href="http://www.cppblog.com/bloodbao/archive/2007/04/04/21260.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>