<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	>

<channel>
	<title>天天向上-leanter</title>
	<atom:link href="http://daydayup.learnter.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://daydayup.learnter.com</link>
	<description>Day Day Up</description>
	<pubDate>Sat, 17 Nov 2007 14:33:35 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.6.5</generator>
	<language>en</language>
			<item>
		<title>Python学习笔记-3</title>
		<link>http://daydayup.learnter.com/2007/11/17/python%e5%ad%a6%e4%b9%a0%e7%ac%94%e8%ae%b0-3/</link>
		<comments>http://daydayup.learnter.com/2007/11/17/python%e5%ad%a6%e4%b9%a0%e7%ac%94%e8%ae%b0-3/#comments</comments>
		<pubDate>Sat, 17 Nov 2007 14:33:35 +0000</pubDate>
		<dc:creator>daydayup</dc:creator>
		
		<category><![CDATA[Python学习]]></category>

		<category><![CDATA[python]]></category>

		<guid isPermaLink="false">http://daydayup.learnter.com/2007/11/17/python%e5%ad%a6%e4%b9%a0%e7%ac%94%e8%ae%b0-3/</guid>
		<description><![CDATA[ 数值类型
Python中的数值型有4种


一般整数（C语言中的long型）
1234,-24,0,0112,0&#215;9A,0X23FA


长整数（无限大），以&#8221;L&#8221;或“l”结尾
99L,99201989l


浮点数（C语言中的double型）
1.23,3.2e-10,4e20,4.0e+210


复数
3+4j,2.0+4.0J,3j


 8进制数和16进制数
对于一般整数，以数字“0”开头的是8进制数，而以“0x”或“0X”打头的则是16进制数。
&#62;&#62;&#62; 076,010,0xff,0x10
(62, 8, 255, 16)
&#62;&#62;&#62; oct(64),hex(64),hex(254) #内置函数 oct,hex 把整数转化为字串
('0100', '0x40', '0xfe')
&#62;&#62;&#62; int('0100'),int('0100',8),int('100',16),int('0x40',16) # int 把字串变为整数，
...                                       [...]]]></description>
			<content:encoded><![CDATA[<h2> 数值类型</h2>
<p>Python中的数值型有4种</p>
<table border="2" cellpadding="5">
<tr>
<td>一般整数（C语言中的long型）</td>
<td>1234,-24,0,0112,0&#215;9A,0X23FA</td>
</tr>
<tr>
<td>长整数（无限大），以&#8221;L&#8221;或“l”结尾</td>
<td>99L,99201989l</td>
</tr>
<tr>
<td>浮点数（C语言中的double型）</td>
<td>1.23,3.2e-10,4e20,4.0e+210</td>
</tr>
<tr>
<td>复数</td>
<td>3+4j,2.0+4.0J,3j</td>
</tr>
</table>
<h3><a name="sec2"></a> 8进制数和16进制数</h3>
<p>对于一般整数，以数字“0”开头的是8进制数，而以“0x”或“0X”打头的则是16进制数。</p>
<pre>&gt;&gt;&gt; 076,010,0xff,0x10
(62, 8, 255, 16)
&gt;&gt;&gt; oct(64),hex(64),hex(254) #内置函数 oct,hex 把整数转化为字串
('0100', '0x40', '0xfe')
&gt;&gt;&gt; int('0100'),int('0100',8),int('100',16),int('0x40',16) # int 把字串变为整数，
...                                                        # 后面的参数表示进制
(100, 64, 256, 64)
&gt;&gt;&gt; eval('0100'),eval('100'),eval('0x40') # eval 函数把输入的字串当作python的命令
(64, 100, 64)
&gt;&gt;&gt; "%o %x %X" % (64,64,255)  # 这是字串的格式化，后面会介绍
'100 40 FF'
&gt;&gt;&gt;</pre>
<h3><a name="sec3"></a> 数学函数</h3>
<p>Python的数学函数放在模块math中，如sin，cos等</p>
<pre>&gt;&gt;&gt; cos(3.24)    #直接使用是没有的
Traceback (most recent call last):
  File "&lt;pyshell#2&gt;", line 1, in &lt;module&gt;
    cos(3.24)
NameError: name 'cos' is not defined
&gt;&gt;&gt; abs(-2.3)    #还有pow等，它们是内置函数
2.2999999999999998
&gt;&gt;&gt; int(2.3),round(3.4),round(2.3451,3)
(2, 3.0, 2.3450000000000002)
&gt;&gt;&gt; import math
&gt;&gt;&gt; math.cos(2.3) #现在，你可以计算cos了
-0.6662760212798241
&gt;&gt;&gt;</pre>
<h3><a name="sec4"></a> 基本运算</h3>
<pre>&gt;&gt;&gt; 2+3,2.0+3,3*4,3.0**3,2**3,2.3**1.2
(5, 5.0, 12, 27.0, 8, 2.716898432499149)
&gt;&gt;&gt; 2.0-3
-1.0
&gt;&gt;&gt;</pre>
<p>Python中的除法，其中的“/”与C语言中的除法一样，当两个整数相除时，会得到一个最大的整数，还有种除法“//”，它对浮点数，也会产生同样的效果</p>
<pre>&gt;&gt;&gt; 5/2,5/2.0,5/-2,5/-2.0
(2, 2.5, -3, -2.5)
&gt;&gt;&gt; 5//2,5//2.0,5//-2,5//-2.0
(2, 2.0, -3, -3.0)
&gt;&gt;&gt; 9/3,9.0/3,9//3,9//3.0
(3, 3.0, 3, 3.0)
&gt;&gt;&gt;</pre>
<p>其它的还包括，“&gt;,&lt;,&gt;=,&lt;<code>,</code>==,&lt;&gt;,!=”等比较操作，对整数的位操作“x|y,x&amp;y,x^y,x&lt;&lt;y,x&gt;&gt;y”，和取模“%”</p>
<pre>&gt;&gt;&gt; 34.0 % 5.0 , 34 %4 , 34 %4.0
(4.0, 2, 2.0)
&gt;&gt;&gt; 3.0&gt;2.0 , 3&lt;2 , 2.0&lt;=3 , 2.0&lt;&gt;3 , 3.0==3
(True, False, True, True, True)
&gt;&gt;&gt; 3|5 , 3&amp;5 , 3^5
(7, 1, 6)
&gt;&gt;&gt; 30&lt;&lt;4 , 128&gt;&gt;4
(480, <img src='http://daydayup.learnter.com/wp-includes/images/smilies/icon_cool.gif' alt='8)' class='wp-smiley' />
&gt;&gt;&gt;</pre>
]]></content:encoded>
			<wfw:commentRss>http://daydayup.learnter.com/2007/11/17/python%e5%ad%a6%e4%b9%a0%e7%ac%94%e8%ae%b0-3/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Python学习笔记-2</title>
		<link>http://daydayup.learnter.com/2007/11/17/python%e5%ad%a6%e4%b9%a0%e7%ac%94%e8%ae%b0-2/</link>
		<comments>http://daydayup.learnter.com/2007/11/17/python%e5%ad%a6%e4%b9%a0%e7%ac%94%e8%ae%b0-2/#comments</comments>
		<pubDate>Sat, 17 Nov 2007 14:30:27 +0000</pubDate>
		<dc:creator>daydayup</dc:creator>
		
		<category><![CDATA[Python学习]]></category>

		<category><![CDATA[python]]></category>

		<guid isPermaLink="false">http://daydayup.learnter.com/2007/11/17/python%e5%ad%a6%e4%b9%a0%e7%ac%94%e8%ae%b0-2/</guid>
		<description><![CDATA[Hello World
不知道是哪个牛人的杰作，几乎所有语言都从这个句子开始。它让你对这种语言有第一眼的认识。
&#62;&#62;&#62; print 'hello world'
hello world
&#62;&#62;&#62;
内置的数据类型
Python的内置数据类型有6种，为


对象类型
例子
Numbers
3.1234, 1234,99L,3+4j


Strings
&#8217;spam&#8217;,&#8221;Leon&#8217;s bag&#8221;


Lists
[1,2,[3,'four']]


dictionaries
{&#8217;food&#8217;:&#8217;spam&#8217;,'taste&#8217;:'yum&#8217;}


Tuples
(1,&#8217;spam&#8217;,4,&#8217;U')


Files
text=open(&#8217;egg&#8217;,'r&#8217;).read()


Python中的变量
Python中，不需要象C++似的，先声名变量的类型，才能使用。Python中的变量有如下特点：

变量在第一次赋值的时候被创建
在表达式中，变量被它的值所代替
变量在使用前，必须要先赋值
变量指向一个对象，不需要事先声名

如：
&#62;&#62;&#62; a=3    #给a赋值为数字对象“3”
&#62;&#62;&#62; a+ 4.0 #计算表达式，a用对象“3”代替
7.0
&#62;&#62;&#62; a='str-ing' # a 又被指向了string对象“str-ing“
&#62;&#62;&#62; print a
str-ing
&#62;&#62;&#62; print b    # b 没有被赋值过，因此出错
Traceback (most recent call last):
  File "&#60;stdin&#62;", line 1, in ?
NameError: name 'b' is not defined
&#62;&#62;&#62; b=a       # b [...]]]></description>
			<content:encoded><![CDATA[<h2>Hello World</h2>
<p>不知道是哪个牛人的杰作，几乎所有语言都从这个句子开始。它让你对这种语言有第一眼的认识。</p>
<pre>&gt;&gt;&gt; print 'hello world'
hello world
&gt;&gt;&gt;</pre>
<h2>内置的数据类型</h2>
<p>Python的内置数据类型有6种，为</p>
<table border="2" cellpadding="5">
<thead>
<th>对象类型</th>
<th>例子</th>
<td>Numbers</td>
<td>3.1234, 1234,99L,3+4j</td>
</tr>
<tr>
<td>Strings</td>
<td>&#8217;spam&#8217;,&#8221;Leon&#8217;s bag&#8221;</td>
</tr>
<tr>
<td>Lists</td>
<td>[1,2,[3,'four']]</td>
</tr>
<tr>
<td>dictionaries</td>
<td>{&#8217;food&#8217;:&#8217;spam&#8217;,'taste&#8217;:'yum&#8217;}</td>
</tr>
<tr>
<td>Tuples</td>
<td>(1,&#8217;spam&#8217;,4,&#8217;U')</td>
</tr>
<tr>
<td>Files</td>
<td>text=open(&#8217;egg&#8217;,'r&#8217;).read()</td>
</tr>
</table>
<h2>Python中的变量</h2>
<p>Python中，不需要象C++似的，先声名变量的类型，才能使用。Python中的变量有如下特点：</p>
<ul>
<li>变量在第一次赋值的时候被创建</li>
<li>在表达式中，变量被它的值所代替</li>
<li>变量在使用前，必须要先赋值</li>
<li>变量指向一个对象，不需要事先声名</li>
</ul>
<p>如：</p>
<pre>&gt;&gt;&gt; a=3    #给a赋值为数字对象“3”
&gt;&gt;&gt; a+ 4.0 #计算表达式，a用对象“3”代替
7.0
&gt;&gt;&gt; a='str-ing' # a 又被指向了string对象“str-ing“
&gt;&gt;&gt; print a
str-ing
&gt;&gt;&gt; print b    # b 没有被赋值过，因此出错
Traceback (most recent call last):
  File "&lt;stdin&gt;", line 1, in ?
NameError: name 'b' is not defined
&gt;&gt;&gt; b=a       # b 指向了 a 指向的对象，即string对象“str-ing"
&gt;&gt;&gt; a=99l     # a 变为了指向数值对象99l
&gt;&gt;&gt; print a,b # 此时，b 并没有改变它指向的对象
99 str-ing
&gt;&gt;&gt; a=['1',2,"34"] # a 指向了list型对象
&gt;&gt;&gt; b=a            # b 也是
&gt;&gt;&gt; a[0]=34        # 改变了 a 指向的对象的第1个元素的值
&gt;&gt;&gt; print a,b      # 当然 b 与 a 指向同一个list对象，
[34, 2, '34'] [34, 2, '34']
&gt;&gt;&gt;</pre>
<p>Python中有个不同的地方，变量只是对象的 别名 ，而不是真正对象。因此，你可以在任意时候，给变量指向任意类型的对象。</p>
]]></content:encoded>
			<wfw:commentRss>http://daydayup.learnter.com/2007/11/17/python%e5%ad%a6%e4%b9%a0%e7%ac%94%e8%ae%b0-2/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Python学习笔记</title>
		<link>http://daydayup.learnter.com/2007/11/17/python%e5%ad%a6%e4%b9%a0%e7%ac%94%e8%ae%b0/</link>
		<comments>http://daydayup.learnter.com/2007/11/17/python%e5%ad%a6%e4%b9%a0%e7%ac%94%e8%ae%b0/#comments</comments>
		<pubDate>Sat, 17 Nov 2007 14:28:16 +0000</pubDate>
		<dc:creator>daydayup</dc:creator>
		
		<category><![CDATA[Python学习]]></category>

		<category><![CDATA[python]]></category>

		<guid isPermaLink="false">http://daydayup.learnter.com/2007/11/17/python%e5%ad%a6%e4%b9%a0%e7%ac%94%e8%ae%b0/</guid>
		<description><![CDATA[ 这是本人学习Python的笔记，不是个Python语言的教程，因此，只记录适合自己 的思路。参考文献： 《Learning Python》，O&#8217;Reilly，东南大学出版社，是英文的影印本。 还有就是几个网站，如http://python.cn和Python的doc文档
 Python简介
Python是一种面向对象的解释型编程语言。Python的官方介绍是：
Python是一种简单易学，功能强大的编程语言，它有高效率的高层数据结构，简单而有效地实现面向对象编程。Python简洁的语法和对动态输入的支持，再加上解释性语言的本质，使得它在大多数平台上的许多领域都是一个理想的脚本语言，特别适用于快速的应用程序开发。
它是开源的，可以到http://www.python.org下载并安装，而一般的Linux下都会安装过了。
Python的运行，你可以采用交互方式，如在命令行下敲入
%python
Python 2.4.4 (#2, Apr  5 2007, 20:11:18)
[GCC 4.1.2 20061115 (prerelease) (Debian 4.1.1-21)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
&#62;&#62;&#62;
其中&#8221;&#62;&#62;&#62;&#8221;就是提示符了，你可以输入Python语法，若是&#8221;&#8230;&#8221;则表示续行，如：
&#62;&#62;&#62;print """hi
...   world"""
hi
  world
&#62;&#62;&#62;
或者使用GUI界面，如IDLE，你可以在这里找到很多。也可以把你的命令写入文本文件，如a.py，然后输入
%python a.py
 Python的特色
Python确实是一种十分精彩又强大的语言。它合理地结合了高性能与使得编写程序简单有趣的特色。

简单
 Python是一种代表简单主义思想的语言。阅读一个良好的Python程序就感觉像是在读英语一样，尽管这个英语的要求非常严格！Python的这种伪代码本质是它最大的优点之一。它使你能够专注于解决问题而不是去搞明白语言本身。
易学
 就如同你即将看到的一样，Python极其容易上手。前面已经提到了，Python有极其简单的语法。
免费、开源
 Python是FLOSS（自由/开放源码软件）之一。简单地说，你可以自由地发布这个软件的拷贝、阅读它的源代码、对它做改动、把它的一部分用于新的自 由软件中。FLOSS是基于一个团体分享知识的概念。这是为什么Python如此优秀的原因之一——它是由一群希望看到一个更加优秀的Python的人创 造并经常改进着的。
高层语言
 当你用Python语言编写程序的时候，你无需考虑诸如如何管理你的程序使用的内存一类的底层细节。
可移植性
 由于它的开源本质，Python已经被移植在许多平台上（经过改动使它能够工作在不同平台上）。如果你小心地避免使用依赖于系统的特性，那么你的所有 Python程序无需修改就可以在下述任何平台上面运行。 这些平台包括Linux、Windows、FreeBSD、Macintosh、Solaris、OS/2、Amiga、AROS、AS/400、 BeOS、OS/390、z/OS、Palm OS、QNX、VMS、Psion、Acom RISC OS、VxWorks、PlayStation、Sharp Zaurus、Windows CE甚至还有PocketPC！
解释性
 这一点需要一些解释。 一个用编译性语言比如C或C++写的程序可以从源文件（即C或C++语言）转换到一个你的计算机使用的语言（二进制代码，即0和1）。这个过程通过编译器 和不同的标记、选项完成。当你运行你的程序的时候，连接/转载器软件把你的程序从硬盘复制到内存中并且运行。 [...]]]></description>
			<content:encoded><![CDATA[<p> 这是本人学习Python的笔记，不是个Python语言的教程，因此，只记录适合自己 的思路。参考文献： 《Learning Python》，O&#8217;Reilly，东南大学出版社，是英文的影印本。 还有就是几个网站，如<a href="http://python.cn/">http://python.cn</a>和Python的doc文档</p>
<h2><a title="sec1" name="sec1"></a> Python简介</h2>
<p>Python是一种面向对象的解释型编程语言。Python的官方介绍是：</p>
<blockquote><p>Python是一种简单易学，功能强大的编程语言，它有高效率的高层数据结构，简单而有效地实现面向对象编程。Python简洁的语法和对动态输入的支持，再加上解释性语言的本质，使得它在大多数平台上的许多领域都是一个理想的脚本语言，特别适用于快速的应用程序开发。</p></blockquote>
<p>它是开源的，可以到<a href="http://www.python.org/">http://www.python.org</a>下载并安装，而一般的Linux下都会安装过了。</p>
<p>Python的运行，你可以采用交互方式，如在命令行下敲入</p>
<pre>%python
Python 2.4.4 (#2, Apr  5 2007, 20:11:18)
[GCC 4.1.2 20061115 (prerelease) (Debian 4.1.1-21)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
&gt;&gt;&gt;</pre>
<p>其中&#8221;&gt;&gt;&gt;&#8221;就是提示符了，你可以输入Python语法，若是&#8221;&#8230;&#8221;则表示续行，如：</p>
<pre>&gt;&gt;&gt;print """hi
...   world"""
hi
  world
&gt;&gt;&gt;</pre>
<p>或者使用GUI界面，如IDLE，你可以在<a href="http://wiki.python.org/moin/IntegratedDevelopmentEnvironments">这里</a>找到很多。也可以把你的命令写入文本文件，如a.py，然后输入</p>
<pre>%python a.py</pre>
<h2><a title="sec2" name="sec2"></a> Python的特色</h2>
<p>Python确实是一种十分精彩又强大的语言。它合理地结合了高性能与使得编写程序简单有趣的特色。</p>
<dl>
<dt><strong>简单</strong></dt>
<dd> Python是一种代表简单主义思想的语言。阅读一个良好的Python程序就感觉像是在读英语一样，尽管这个英语的要求非常严格！Python的这种伪代码本质是它最大的优点之一。它使你能够专注于解决问题而不是去搞明白语言本身。</dd>
<dt><strong>易学</strong></dt>
<dd> 就如同你即将看到的一样，Python极其容易上手。前面已经提到了，Python有极其简单的语法。</dd>
<dt><strong>免费、开源</strong></dt>
<dd> Python是FLOSS（自由/开放源码软件）之一。简单地说，你可以自由地发布这个软件的拷贝、阅读它的源代码、对它做改动、把它的一部分用于新的自 由软件中。FLOSS是基于一个团体分享知识的概念。这是为什么Python如此优秀的原因之一——它是由一群希望看到一个更加优秀的Python的人创 造并经常改进着的。</dd>
<dt><strong>高层语言</strong></dt>
<dd> 当你用Python语言编写程序的时候，你无需考虑诸如如何管理你的程序使用的内存一类的底层细节。</dd>
<dt><strong>可移植性</strong></dt>
<dd> 由于它的开源本质，Python已经被移植在许多平台上（经过改动使它能够工作在不同平台上）。如果你小心地避免使用依赖于系统的特性，那么你的所有 Python程序无需修改就可以在下述任何平台上面运行。 这些平台包括Linux、Windows、FreeBSD、Macintosh、Solaris、OS/2、Amiga、AROS、AS/400、 BeOS、OS/390、z/OS、Palm OS、QNX、VMS、Psion、Acom RISC OS、VxWorks、PlayStation、Sharp Zaurus、Windows CE甚至还有PocketPC！</dd>
<dt><strong>解释性</strong></dt>
<dd> 这一点需要一些解释。 一个用编译性语言比如C或C++写的程序可以从源文件（即C或C++语言）转换到一个你的计算机使用的语言（二进制代码，即0和1）。这个过程通过编译器 和不同的标记、选项完成。当你运行你的程序的时候，连接/转载器软件把你的程序从硬盘复制到内存中并且运行。 而Python语言写的程序不需要编译成二进制代码。你可以直接从源代码 运行 程序。在计算机内部，Python解释器把源代码转换成称为字节码的中间形式，然后再把它翻译成计算机使用的机器语言并运行。事实上，由于你不再需要担心 如何编译程序，如何确保连接转载正确的库等等，所有这一切使得使用Python更加简单。由于你只需要把你的Python程序拷贝到另外一台计算机上，它 就可以工作了，这也使得你的Python程序更加易于移植。</dd>
<dt><strong>面向对象</strong></dt>
<dd> Python即支持面向过程的编程也支持面向对象的编程。在 面向过程 的语言中，程序是由过程或仅仅是可重用代码的函数构建起来的。在 面向对象 的语言中，程序是由数据和功能组合而成的对象构建起来的。与其他主要的语言如C++和Java相比，Python以一种非常强大又简单的方式实现面向对象 编程。</dd>
<dt><strong>可扩展性</strong></dt>
<dd> 如果你需要你的一段关键代码运行得更快或者希望某些算法不公开，你可以把你的部分程序用C或C++编写，然后在你的Python程序中使用它们。</dd>
<dt><strong>可嵌入性</strong></dt>
<dd> 你可以把Python嵌入你的C/C++程序，从而向你的程序用户提供脚本功能。</dd>
<dt><strong>丰富的库</strong></dt>
<dd> Python标准库确实很庞大。它可以帮助你处理各种工作，包括正则表达式、文档生成、单元测试、线程、数据库、网页浏览器、CGI、FTP、电子邮件、 XML、XML-RPC、HTML、WAV文件、密码系统、GUI（图形用户界面）、Tk和其他与系统有关的操作。记住，只要安装了Python，所有这 些功能都是可用的。这被称作Python的“功能齐全”理念。 除了标准库以外，还有许多其他高质量的库，如wxPython、Twisted和Python图像库等等。</dd>
</dl>
]]></content:encoded>
			<wfw:commentRss>http://daydayup.learnter.com/2007/11/17/python%e5%ad%a6%e4%b9%a0%e7%ac%94%e8%ae%b0/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Hello world!</title>
		<link>http://daydayup.learnter.com/2007/11/17/hello-world/</link>
		<comments>http://daydayup.learnter.com/2007/11/17/hello-world/#comments</comments>
		<pubDate>Sat, 17 Nov 2007 06:27:33 +0000</pubDate>
		<dc:creator>daydayup</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[Welcome to 学习者网志. This is your first post. Edit or delete it, then start blogging!
]]></description>
			<content:encoded><![CDATA[<p>Welcome to <a href="http://learnter.com/">学习者网志</a>. This is your first post. Edit or delete it, then start blogging!</p>
]]></content:encoded>
			<wfw:commentRss>http://daydayup.learnter.com/2007/11/17/hello-world/feed/</wfw:commentRss>
		</item>
		<item>
		<title>4个故事</title>
		<link>http://daydayup.learnter.com/2006/05/08/4%e4%b8%aa%e6%95%85%e4%ba%8b/</link>
		<comments>http://daydayup.learnter.com/2006/05/08/4%e4%b8%aa%e6%95%85%e4%ba%8b/#comments</comments>
		<pubDate>Mon, 08 May 2006 01:03:00 +0000</pubDate>
		<dc:creator>daydayup</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://daydayup.learnter.com/2006/05/08/4%e4%b8%aa%e6%95%85%e4%ba%8b/</guid>
		<description><![CDATA[1.误会：早年在美国阿拉斯加地方，有一对年轻人结婚，婚后生育，他的太太因难产而死，遗下一孩子。他忙生活，又忙于看家，因没有人帮忙看孩子，就 训练一只狗，那狗聪明听话，能照顾小孩，咬着奶瓶喂奶给孩子喝，抚养孩子。有一天，主人出门去了，叫它照顾孩子。他到了别的乡村，因遇大雪，当日不能回 来。第二天才赶回家，狗立即闻声出来迎接主人。他把房门开一看，到处是血，抬头一望，床上也是血，孩子不见了，狗在身边，满口也是血，主人发现这种情形， 以为狗性发作，把孩子吃掉了，大怒之下，拿起刀来向着狗头一劈，把狗杀死了。之后，忽然听到孩子的声音，又见他从床下爬了出来，于是抱起孩子；虽然身上有 血，但并未受伤。他很奇怪，不知究竟是怎么一回事，再看看狗身，腿上的肉没有了，旁边有一只狼，口里还咬着狗的肉；狗救了小主人，却被主人误杀了，这真是 天下最令人惊奇的误会。注：误会的事，是人往往在不了解、无理智、无耐心、缺少思考、未能多方体谅对方，反省自己，感情极为冲动的情况之下所发生。误会一 开始，即一直只想到对方的千错万错；因此，会使误会越陷越深，弄到不可收拾的地步，人对无知的动物小狗发生误会，尚且会有如此可怕严重的后果，这样人与人 之间的误会，则其后果更是难以想象。2.钉子：有一个男孩有着很坏的脾气，于是他的父亲就给了他一袋钉子；并且告诉他，每当他发脾气的时候就钉一根钉子在后院的围篱上。第一天，这个男孩钉下 了37根钉子。慢慢地每天钉下的数量减少了。他发现控制自己的脾气要比钉下那些钉子来得容易些。终于有一天这个男孩再也不会失去耐性乱发脾气，他告诉他的 父亲这件事，父亲告诉他，现在开始每当他能控制自己的脾气的时候，就拔出一根钉子。一天天地过去了，最后男孩告诉他的父亲，他终于把所有钉子都拔出来了。 父亲握着他的手来到后院说：你做得很好，我的好孩子。但是看看那些围篱上的洞，这些围篱将永远不能回复成从前。你生气的时候说的话将像这些钉子一样留下疤 痕。如果你拿刀子捅别人一刀，不管你说了多少次对不起，那个伤口将永远存在。话语的伤痛就像真实的伤痛一样令人无法承受。注：人与人之间常常因为一些彼此 无法释怀的坚持，而造成永远的伤害。如果我们都能从自己做起，开始宽容地看待他人，相信你（你）一定能收到许多意想不到的结果&#8230;.帮别人开启一扇窗， 也就是让自己看到更完整的天空&#8230;.
3.且慢下手：大多数的同仁都很兴奋，因为单位里调来一位新主管，据说是个能人，专门被派来整顿业务；可是日一天天过去，新主管却毫无作为，每天彬 彬有礼进办公室，便躲在里面难得出门，那些本来紧张得要死的坏份子，现在反而更猖獗了。他那里是个能人嘛！根本是个老好人，比以前的主管更容易唬！四个月 过去，就在真正努力为新主管感到失望时，新主管却发威了－－坏份子一律开革，能人则获得晋升。下手之快，断事之准，与四月表现保守的他，简直像是全然换个 人。年终聚餐时，新主管在酒过三巡之后致词：「相信大家对我新到任期间的表现，和后来的大刀阔斧，一定感到不解，现在听我说个故事，各位就明白了：「我有 位朋友，买了栋带着大院的房子，他一搬进去，就将那院子全面整顿，杂草树一律清除，改种自己新买的花卉，某日原先的屋主往访，进门大吃一惊的问：『那最名 贵的牡丹哪里去了？』我这位朋友才发现，他竟然把牡丹当草给铲了。后来他又买了一栋房子，虽然院子更是杂乱，他却是按兵不动，果然冬天以为是杂树的植物， 春天里开了繁花；春天以为是野草的，夏天里成了锦蔟；半年都没有动静的小树，秋天居然红了叶。直到暮秋，它才真正认清哪些是无用的植物，而大力铲除，并使 所有珍贵的草木得以保存。」说到这儿，主管举起杯来：「让我敬在座的每一位，因为如果这办公室是个花园，你们就都是其间的珍木，珍木不可能一年到头开花结 果，只有经过长期的观察才认得出啊！
4.宽大：这是一个来自越战归来的士兵的故事。他从旧金山打电话给他的父母，告诉他们：「爸妈，我回来了，可是我有个不情之请。我想带一个朋友同我 一起回家。」「当然好啊！」他们回答「我们会很高兴见到的。」不过儿子又继续下去「可是有件事我想先告诉你们，他在越战里受了重伤，少了一条胳臂和一只 脚，他现在走投无路，我想请他回来和我们一起生活。」「儿子，我很遗撼，不过或许我们可以帮他找个安身之处。」父亲又接着说「儿子，你不知道自己在说些什 么。像他这样残障的人会对我们的生活造成很大的负担。我们还有自己的生活要过，不能就让他这样破坏了。我建议你先回家然后忘了他，他会找到自己的一片天空 的。」就在此时儿子挂上了电话，他的父母再也没有他的消息了。几天后，这对父母接到了来自旧金山警局的电话，告诉他们亲爱的儿子已经坠楼身亡了。警方相信 这只是单纯的自杀案件。于是他们伤心欲绝地飞往旧金山，并在警方带领之下到停尸间去辨认儿子的遗体。那的确是他们的儿子没错，但惊讶的是儿子居然，只有一 条胳臂和一条腿。故事中的父母就和我们大多数人一样。要去喜爱面貌姣好或谈吐风趣的人很容易，但是要喜欢那些造成我们不便和不快的人却太难了。我们总是宁 愿和那些不如我们健康，美丽或聪明的人保持距离。然而感谢上帝，有些人却不会对我们如此残酷。他们会无怨无悔地爱我们，不论我们多么糟总是愿意接纳我们。 今晚在你入睡之前，向上帝祷告请他赐给你力量去接纳他人，不论他们是怎么样的人；请他帮助我们了解那些不同于我们的人。每个人的心里都藏着一种神奇的东西 称为「友情」，你不知道它究竟是如何发生何时发生，但你却知道它总会带给我们特殊的礼物。你也会了解友情是上帝给我们最珍贵的赠与！朋友就像是稀奇的宝 物。他们带来欢笑，激励我们成功。他们倾听我们内心的话，与我们分享每一句赞美。他们的心房永远为我们而敞开。现在就告诉你的朋友你有多在乎他们。试想：朋友，您一路看下来之后；一定有很深的感触吧。那么，在对别人有所决定与判断之前，首先，请想想这是否是一个「误会」，然后，请考虑您是否一定要钉下这个「钉子」，如果可以的话，请「且慢下手」。因为，当您对别人「宽大」之时，即是对您自己宽大。
]]></description>
			<content:encoded><![CDATA[<p>1.误会：早年在美国阿拉斯加地方，有一对年轻人结婚，婚后生育，他的太太因难产而死，遗下一孩子。他忙生活，又忙于看家，因没有人帮忙看孩子，就 训练一只狗，那狗聪明听话，能照顾小孩，咬着奶瓶喂奶给孩子喝，抚养孩子。有一天，主人出门去了，叫它照顾孩子。他到了别的乡村，因遇大雪，当日不能回 来。第二天才赶回家，狗立即闻声出来迎接主人。他把房门开一看，到处是血，抬头一望，床上也是血，孩子不见了，狗在身边，满口也是血，主人发现这种情形， 以为狗性发作，把孩子吃掉了，大怒之下，拿起刀来向着狗头一劈，把狗杀死了。之后，忽然听到孩子的声音，又见他从床下爬了出来，于是抱起孩子；虽然身上有 血，但并未受伤。他很奇怪，不知究竟是怎么一回事，再看看狗身，腿上的肉没有了，旁边有一只狼，口里还咬着狗的肉；狗救了小主人，却被主人误杀了，这真是 天下最令人惊奇的误会。注：误会的事，是人往往在不了解、无理智、无耐心、缺少思考、未能多方体谅对方，反省自己，感情极为冲动的情况之下所发生。误会一 开始，即一直只想到对方的千错万错；因此，会使误会越陷越深，弄到不可收拾的地步，人对无知的动物小狗发生误会，尚且会有如此可怕严重的后果，这样人与人 之间的误会，则其后果更是难以想象。<br />2.钉子：有一个男孩有着很坏的脾气，于是他的父亲就给了他一袋钉子；并且告诉他，每当他发脾气的时候就钉一根钉子在后院的围篱上。第一天，这个男孩钉下 了37根钉子。慢慢地每天钉下的数量减少了。他发现控制自己的脾气要比钉下那些钉子来得容易些。终于有一天这个男孩再也不会失去耐性乱发脾气，他告诉他的 父亲这件事，父亲告诉他，现在开始每当他能控制自己的脾气的时候，就拔出一根钉子。一天天地过去了，最后男孩告诉他的父亲，他终于把所有钉子都拔出来了。 父亲握着他的手来到后院说：你做得很好，我的好孩子。但是看看那些围篱上的洞，这些围篱将永远不能回复成从前。你生气的时候说的话将像这些钉子一样留下疤 痕。如果你拿刀子捅别人一刀，不管你说了多少次对不起，那个伤口将永远存在。话语的伤痛就像真实的伤痛一样令人无法承受。注：人与人之间常常因为一些彼此 无法释怀的坚持，而造成永远的伤害。如果我们都能从自己做起，开始宽容地看待他人，相信你（你）一定能收到许多意想不到的结果&#8230;.帮别人开启一扇窗， 也就是让自己看到更完整的天空&#8230;.</p>
<p>3.且慢下手：大多数的同仁都很兴奋，因为单位里调来一位新主管，据说是个能人，专门被派来整顿业务；可是日一天天过去，新主管却毫无作为，每天彬 彬有礼进办公室，便躲在里面难得出门，那些本来紧张得要死的坏份子，现在反而更猖獗了。他那里是个能人嘛！根本是个老好人，比以前的主管更容易唬！四个月 过去，就在真正努力为新主管感到失望时，新主管却发威了－－坏份子一律开革，能人则获得晋升。下手之快，断事之准，与四月表现保守的他，简直像是全然换个 人。年终聚餐时，新主管在酒过三巡之后致词：「相信大家对我新到任期间的表现，和后来的大刀阔斧，一定感到不解，现在听我说个故事，各位就明白了：「我有 位朋友，买了栋带着大院的房子，他一搬进去，就将那院子全面整顿，杂草树一律清除，改种自己新买的花卉，某日原先的屋主往访，进门大吃一惊的问：『那最名 贵的牡丹哪里去了？』我这位朋友才发现，他竟然把牡丹当草给铲了。后来他又买了一栋房子，虽然院子更是杂乱，他却是按兵不动，果然冬天以为是杂树的植物， 春天里开了繁花；春天以为是野草的，夏天里成了锦蔟；半年都没有动静的小树，秋天居然红了叶。直到暮秋，它才真正认清哪些是无用的植物，而大力铲除，并使 所有珍贵的草木得以保存。」说到这儿，主管举起杯来：「让我敬在座的每一位，因为如果这办公室是个花园，你们就都是其间的珍木，珍木不可能一年到头开花结 果，只有经过长期的观察才认得出啊！</p>
<p>4.宽大：这是一个来自越战归来的士兵的故事。他从旧金山打电话给他的父母，告诉他们：「爸妈，我回来了，可是我有个不情之请。我想带一个朋友同我 一起回家。」「当然好啊！」他们回答「我们会很高兴见到的。」不过儿子又继续下去「可是有件事我想先告诉你们，他在越战里受了重伤，少了一条胳臂和一只 脚，他现在走投无路，我想请他回来和我们一起生活。」「儿子，我很遗撼，不过或许我们可以帮他找个安身之处。」父亲又接着说「儿子，你不知道自己在说些什 么。像他这样残障的人会对我们的生活造成很大的负担。我们还有自己的生活要过，不能就让他这样破坏了。我建议你先回家然后忘了他，他会找到自己的一片天空 的。」就在此时儿子挂上了电话，他的父母再也没有他的消息了。几天后，这对父母接到了来自旧金山警局的电话，告诉他们亲爱的儿子已经坠楼身亡了。警方相信 这只是单纯的自杀案件。于是他们伤心欲绝地飞往旧金山，并在警方带领之下到停尸间去辨认儿子的遗体。那的确是他们的儿子没错，但惊讶的是儿子居然，只有一 条胳臂和一条腿。故事中的父母就和我们大多数人一样。要去喜爱面貌姣好或谈吐风趣的人很容易，但是要喜欢那些造成我们不便和不快的人却太难了。我们总是宁 愿和那些不如我们健康，美丽或聪明的人保持距离。然而感谢上帝，有些人却不会对我们如此残酷。他们会无怨无悔地爱我们，不论我们多么糟总是愿意接纳我们。 今晚在你入睡之前，向上帝祷告请他赐给你力量去接纳他人，不论他们是怎么样的人；请他帮助我们了解那些不同于我们的人。每个人的心里都藏着一种神奇的东西 称为「友情」，你不知道它究竟是如何发生何时发生，但你却知道它总会带给我们特殊的礼物。你也会了解友情是上帝给我们最珍贵的赠与！朋友就像是稀奇的宝 物。他们带来欢笑，激励我们成功。他们倾听我们内心的话，与我们分享每一句赞美。他们的心房永远为我们而敞开。现在就告诉你的朋友你有多在乎他们。<br />试想：朋友，您一路看下来之后；一定有很深的感触吧。那么，在对别人有所决定与判断之前，首先，请想想这是否是一个「误会」，然后，请考虑您是否一定要钉下这个「钉子」，如果可以的话，请「且慢下手」。因为，当您对别人「宽大」之时，即是对您自己宽大。</p>
]]></content:encoded>
			<wfw:commentRss>http://daydayup.learnter.com/2006/05/08/4%e4%b8%aa%e6%95%85%e4%ba%8b/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Program: 得到网页中的Frame访问</title>
		<link>http://daydayup.learnter.com/2006/05/08/program-%e5%be%97%e5%88%b0%e7%bd%91%e9%a1%b5%e4%b8%ad%e7%9a%84frame%e8%ae%bf%e9%97%ae/</link>
		<comments>http://daydayup.learnter.com/2006/05/08/program-%e5%be%97%e5%88%b0%e7%bd%91%e9%a1%b5%e4%b8%ad%e7%9a%84frame%e8%ae%bf%e9%97%ae/#comments</comments>
		<pubDate>Mon, 08 May 2006 01:00:00 +0000</pubDate>
		<dc:creator>daydayup</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://daydayup.learnter.com/2006/05/08/program-%e5%be%97%e5%88%b0%e7%bd%91%e9%a1%b5%e4%b8%ad%e7%9a%84frame%e8%ae%bf%e9%97%ae/</guid>
		<description><![CDATA[如果是框架,并且其中的文档是HTML，那么可以查询其IWebBrowser2接口来获得你需要的接口否则可以查询当前HTML文档的IServiceProvider接口，然后查询IID_IWebBrowserApp服务。参考 http://msdn.microsoft.com/msdnmag/issues/01/06/c/, http://support.microsoft.com/default.aspx?id=196340
IHTMLDocument2* pDoc2;CComBSTR tagName;pElement-&#62;get_tagName(&#38;tagName);CString str = tagName;str.MakeUpper();if (str == &#8220;FRAME&#8221; &#124;&#124; str == &#8220;IFRAME&#8221;){HRESULT hr;IHTMLWindow2 *pHTMLWindow;IHTMLFrameBase2* pHTMLFrameBase2;hr =pElement-&#62;QueryInterface(IID_IHTMLFrameBase2, (void**)&#38;pHTMLFrameBase2);pElement-&#62;Release();hr = pHTMLFrameBase2-&#62;get_contentWindow(&#38;pHTMLWindow);pHTMLFrameBase2-&#62;Release();hr = pHTMLWindow-&#62;get_document(&#38;pDoc2);然后用IHTMLDocument2对域进行操作
______________________________&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-________________________void CMyView::EnumFrames(){    IHTMLDocument2 * pDoc = NULL;    IHTMLWindow2 *pHTMLWnd = NULL;    IHTMLDocument2 * pFrameDoc=NULL;    IHTMLFramesCollection2 *pFramesCollection=NULL;    LPDISPATCH [...]]]></description>
			<content:encoded><![CDATA[<p>如果是框架,并且其中的文档是HTML，那么可以查询其IWebBrowser2接口来获得你需要的接口<br />否则可以查询当前HTML文档的IServiceProvider接口，然后查询IID_IWebBrowserApp服务。<br />参考 http://msdn.microsoft.com/msdnmag/issues/01/06/c/, http://support.microsoft.com/default.aspx?id=196340</p>
<p>IHTMLDocument2* pDoc2;<br />CComBSTR tagName;<br />pElement-&gt;get_tagName(&amp;tagName);<br />CString str = tagName;<br />str.MakeUpper();<br />if (str == &#8220;FRAME&#8221; || str == &#8220;IFRAME&#8221;)<br />{<br />HRESULT hr;<br />IHTMLWindow2 *pHTMLWindow;<br />IHTMLFrameBase2* pHTMLFrameBase2;<br />hr =pElement-&gt;QueryInterface(IID_IHTMLFrameBase2, (void**)&amp;pHTMLFrameBase2);<br />pElement-&gt;Release();<br />hr = pHTMLFrameBase2-&gt;get_contentWindow(&amp;pHTMLWindow);<br />pHTMLFrameBase2-&gt;Release();<br />hr = pHTMLWindow-&gt;get_document(&amp;pDoc2);<br />然后用IHTMLDocument2对域进行操作</p>
<p>______________________________&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-________________________<br />void CMyView::EnumFrames()<br />{<br />    IHTMLDocument2 * pDoc = NULL;<br />    IHTMLWindow2 *pHTMLWnd = NULL;<br />    IHTMLDocument2 * pFrameDoc=NULL;<br />    IHTMLFramesCollection2 *pFramesCollection=NULL;<br />    LPDISPATCH lpDispatch;   </p>
<p>    long p;<br />    VARIANT varindex,varresult;<br />    varresult.vt=VT_DISPATCH;<br />    varindex.vt = VT_I4;<br />    try<br />    {<br />        pDoc = (IHTMLDocument2*)(GetHtmlDocument());<br />        if(pDoc!=NULL)<br />        {<br />            pDoc-&gt;get_frames(&amp;pFramesCollection);<br />            if(pFramesCollection!=NULL)<br />            {<br />                pFramesCollection-&gt;get_length(&amp;p);<br />                if(p&gt;0)<br />                {       <br />                    for(int i=0; i&lt;p; i++)<br />                    {<br />                        varindex.lVal = i;                   <br />                        if(pFramesCollection-&gt;item(&amp;varindex, &amp;varresult) ==S_OK)<br />                        {<br />                            lpDispatch=(LPDISPATCH)varresult.ppdispVal;                           </p>
<p>                            if (SUCCEEDED(lpDispatch-&gt;QueryInterface(IID_IHTMLWindow2, (LPVOID *)&amp;pHTMLWnd)))<br />                            {<br />                                if(SUCCEEDED(pHTMLWnd-&gt;get_document( &amp;pFrameDoc)))<br />                                {<br />                                    CString info;<br />                                    info.Format(&#8221;%d&#8221;,pFrameDoc);<br />                                    MessageBox(info);                                                           </p>
<p>                                    pFrameDoc-&gt;Release();<br />                                    pFrameDoc=NULL;</p>
<p>                                }<br />                                pHTMLWnd-&gt;Release();<br />                                pHTMLWnd=NULL;<br />                            }</p>
<p>                        }<br />                    }<br />                }<br />            }<br />        }<br />    }<br />    catch(&#8230;)<br />    {<br />    };</p>
<p>    try<br />    {<br />        if(pDoc != NULL)<br />            pDoc-&gt;Release();<br />        if(pFramesCollection != NULL)<br />            pFramesCollection-&gt;Release();<br />    }<br />    catch(&#8230;)<br />    {<br />    };<br />}</p>
]]></content:encoded>
			<wfw:commentRss>http://daydayup.learnter.com/2006/05/08/program-%e5%be%97%e5%88%b0%e7%bd%91%e9%a1%b5%e4%b8%ad%e7%9a%84frame%e8%ae%bf%e9%97%ae/feed/</wfw:commentRss>
		</item>
		<item>
		<title>test</title>
		<link>http://daydayup.learnter.com/2006/05/07/test/</link>
		<comments>http://daydayup.learnter.com/2006/05/07/test/#comments</comments>
		<pubDate>Sun, 07 May 2006 05:28:00 +0000</pubDate>
		<dc:creator>daydayup</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://daydayup.learnter.com/2006/05/07/test/</guid>
		<description><![CDATA[first one
]]></description>
			<content:encoded><![CDATA[<p>first one</p>
]]></content:encoded>
			<wfw:commentRss>http://daydayup.learnter.com/2006/05/07/test/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>
