<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom"><title type="text">所有随笔_博客园|网站分类</title><subtitle type="text">代码改变世界</subtitle><id>http://feed.cnblogs.com/blog/sitecateogry/all/rss</id><updated>2012-05-30T05:38:36Z</updated><generator>feed.cnblogs.com</generator><link rel="alternate" type="text/html" href="http://www.cnblogs.com/cate/all/"/><link rel="self" type="application/atom+xml" href="http://feed.cnblogs.com/blog/sitecateogry/all/rss"/><entry><id>http://www.cnblogs.com/luomingui/archive/2012/05/30/2526143.html</id><title type="text">OEA框架学习：使用东软代码生成器</title><summary type="text"/><published>2012-05-30T05:37:00Z</published><updated>2012-05-30T05:37:00Z</updated><author><name>罗敏贵</name><uri>http://www.cnblogs.com/luomingui/</uri></author><link rel="alternate" href="http://www.cnblogs.com/luomingui/archive/2012/05/30/2526143.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/luomingui/archive/2012/05/30/2526143.html"/><content type="html">&lt;p&gt;&lt;strong&gt;一、摘要&lt;/strong&gt;&lt;/p&gt;  &lt;blockquote style='border:2px solid #EFEFEF;color:#333333;padding:5px 10px;'&gt;   &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; 没事玩玩，哈。&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;&lt;strong&gt;二、本文大纲&lt;/strong&gt;&lt;/p&gt;  &lt;blockquote style='border:2px solid #EFEFEF;color:#333333;padding:5px 10px;'&gt;   &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; a、摘要&amp;#160; 。&lt;/p&gt;    &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; b、东软介绍 。&lt;/p&gt;    &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; c、东软模板&amp;#160; 。&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;&lt;strong&gt;三、东软介绍 &lt;/strong&gt;&lt;/p&gt;  &lt;blockquote style='border:2px solid #EFEFEF;color:#333333;padding:5px 10px;'&gt;   &lt;p&gt;&amp;#160; &lt;/p&gt;    &lt;p&gt; 大家直接去看官网就可以了哈，地址了，在这呢。&lt;a title="http://www.maticsoft.com/default.htm" href="http://www.maticsoft.com/default.htm"&gt;http://www.maticsoft.com/default.htm&lt;/a&gt;&amp;#160;&lt;/p&gt;    &lt;p&gt;&amp;#160; &lt;a href="http://images.cnblogs.com/cnblogs_com/luomingui/201205/201205301336257701.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://images.cnblogs.com/cnblogs_com/luomingui/201205/201205301336304141.png" width="644" height="424" /&gt;&lt;/a&gt; &lt;/p&gt;    &lt;p&gt;&amp;#160;&amp;#160; 这里就不细说了吧。 &lt;/p&gt;    &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;&lt;strong&gt;四、东软模板 &lt;/strong&gt;&lt;/p&gt;  &lt;blockquote style='border:2px solid #EFEFEF;color:#333333;padding:5px 10px;'&gt;   &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; OEA实体模板。&lt;/p&gt;    &lt;div style="border-bottom: #4f81bd 1px solid; text-align: left; border-left: #4f81bd 1px solid; line-height: 18px; background-color: white; margin: 0px; width: 100%; font-family: &amp;#39;Courier New&amp;#39;,&amp;#39;Consolas&amp;#39;,&amp;#39;Fixedsys&amp;#39;,&amp;#39;BitStream Vera Sans Mono&amp;#39;, courier,monospace,serif; color: black; font-size: 12px; overflow: auto; border-top: #4f81bd 1px solid; border-right: #4f81bd 1px solid"&gt;     &lt;span style="line-height: 18px; color: #4f81bd"&gt; 1:  &lt;/span&gt;&lt;span style="color: #8b008b"&gt;&amp;lt;#@ template &lt;/span&gt;&lt;span style="color: red"&gt;language&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;c#&amp;quot; &lt;/span&gt;&lt;span style="color: red"&gt;HostSpecific&lt;/span&gt;&lt;span style="color: blue"&gt;=&amp;quot;True&amp;quot; &lt;/span&gt;&lt;span style="color: #8b008b"&gt;#&amp;gt;&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt; 2:  &lt;/span&gt;&lt;span style="color: #8b008b"&gt;&amp;lt;#@ output &lt;/span&gt;&lt;span style="color: red"&gt;extension&lt;/span&gt;&lt;span style="color: blue"&gt;= &amp;quot;.cs&amp;quot; &lt;/span&gt;&lt;span style="color: #8b008b"&gt;#&amp;gt;&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt; 3:  &lt;/span&gt;&lt;span style="color: #8b008b"&gt;&amp;lt;#&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt; 4:  &lt;/span&gt;&lt;span style="color: #8b008b"&gt;    TableHost &lt;/span&gt;&lt;span style="color: red"&gt;host &lt;/span&gt;&lt;span style="color: blue"&gt;= &lt;/span&gt;&lt;span style="color: #8b008b"&gt;(TableHost)(Host);&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt; 5:  &lt;/span&gt;&lt;span style="color: #8b008b"&gt;    host.Fieldlist.Sort(CodeCommon.CompareByintOrder);&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt; 6:  &lt;/span&gt;&lt;span style="color: #8b008b"&gt;#&amp;gt;&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt; 7:  &lt;/span&gt;&lt;span style="color: #8b008b"&gt;&lt;/span&gt;&lt;span style="color: black"&gt;using System;&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt; 8:  &lt;/span&gt;&lt;span style="color: black"&gt;using System.Collections.Generic;&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt; 9:  &lt;/span&gt;&lt;span style="color: black"&gt;using System.Linq;&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;10:  &lt;/span&gt;&lt;span style="color: black"&gt;using System.Text;&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;11:  &lt;/span&gt;&lt;span style="color: black"&gt;using OEA.Library;&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;12:  &lt;/span&gt;&lt;span style="color: black"&gt;using OEA.MetaModel;&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;13:  &lt;/span&gt;&lt;span style="color: black"&gt;using OEA.MetaModel.Attributes;&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;14:  &lt;/span&gt;&lt;span style="color: black"&gt;using OEA.MetaModel.View;&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;15:  &lt;/span&gt;&lt;span style="color: black"&gt;&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;16:  &lt;/span&gt;&lt;span style="color: black"&gt;namespace  &lt;/span&gt;&lt;span style="color: #8b008b"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: red"&gt;#&lt;/span&gt;&lt;span style="color: blue"&gt;= &lt;/span&gt;&lt;span style="color: #8b008b"&gt;host.NameSpace #&amp;gt; &lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;17:  &lt;/span&gt;&lt;span style="color: #8b008b"&gt;&lt;/span&gt;&lt;span style="color: black"&gt;{&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;18:  &lt;/span&gt;&lt;span style="color: black"&gt;    &lt;/span&gt;&lt;span style="color: #8b008b"&gt;&amp;lt;# if( host.TableDescription.Length &amp;gt; &lt;/span&gt;&lt;span style="color: #00008b"&gt;0&lt;/span&gt;&lt;span style="color: black"&gt;) {#&amp;gt;&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;19:  &lt;/span&gt;&lt;span style="color: black"&gt;    //&lt;/span&gt;&lt;span style="color: #8b008b"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: red"&gt;#&lt;/span&gt;&lt;span style="color: blue"&gt;= &lt;/span&gt;&lt;span style="color: #8b008b"&gt;host.TableDescription #&amp;gt;&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;20:  &lt;/span&gt;&lt;span style="color: #8b008b"&gt;    &amp;lt;# } #&amp;gt;&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;21:  &lt;/span&gt;&lt;span style="color: #8b008b"&gt;    &lt;/span&gt;&lt;span style="color: black"&gt;[RootEntity, Serializable]&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;22:  &lt;/span&gt;&lt;span style="color: black"&gt;    public class &lt;/span&gt;&lt;span style="color: #8b008b"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: red"&gt;#&lt;/span&gt;&lt;span style="color: blue"&gt;= &lt;/span&gt;&lt;span style="color: #8b008b"&gt;host.GetModelClass(host.TableName) #&amp;gt; &lt;/span&gt;&lt;span style="color: black"&gt;: MyEntity&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;23:  &lt;/span&gt;&lt;span style="color: black"&gt;    {&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;24:  &lt;/span&gt;&lt;span style="color: black"&gt;       &lt;/span&gt;&lt;span style="color: #8b008b"&gt;&amp;lt;# foreach (ColumnInfo c in host.Fieldlist)&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;25:  &lt;/span&gt;&lt;span style="color: #8b008b"&gt;        { #&amp;gt;&lt;/span&gt;&lt;span style="color: black"&gt;/// &lt;/span&gt;&lt;span style="color: #8b008b"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: red"&gt;summary&lt;/span&gt;&lt;span style="color: #8b008b"&gt;&amp;gt;&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;26:  &lt;/span&gt;&lt;span style="color: #8b008b"&gt;        &lt;/span&gt;&lt;span style="color: black"&gt;/// &lt;/span&gt;&lt;span style="color: #8b008b"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: red"&gt;#&lt;/span&gt;&lt;span style="color: blue"&gt;= &lt;/span&gt;&lt;span style="color: #8b008b"&gt;string.IsNullOrEmpty(c.Description)  ? c.ColumnName : c.Description #&amp;gt;&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;27:  &lt;/span&gt;&lt;span style="color: #8b008b"&gt;        &lt;/span&gt;&lt;span style="color: black"&gt;/// &lt;/span&gt;&lt;span style="color: #8b008b"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: red"&gt;summary&lt;/span&gt;&lt;span style="color: #8b008b"&gt;&amp;gt;        &lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;28:  &lt;/span&gt;&lt;span style="color: #8b008b"&gt;        &lt;/span&gt;&lt;span style="color: black"&gt;public static readonly Property&lt;/span&gt;&lt;span style="color: #8b008b"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: red"&gt;&amp;lt;#&lt;/span&gt;&lt;span style="color: blue"&gt;= &lt;/span&gt;&lt;span style="color: #8b008b"&gt;CodeCommon.DbTypeToCS(c.TypeName) #&amp;gt;&lt;/span&gt;&lt;span style="color: black"&gt;&amp;gt; &lt;/span&gt;&lt;span style="color: #8b008b"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: red"&gt;#&lt;/span&gt;&lt;span style="color: blue"&gt;= &lt;/span&gt;&lt;span style="color: #8b008b"&gt;c.ColumnName #&amp;gt;&lt;/span&gt;&lt;span style="color: black"&gt;Property = P&lt;/span&gt;&lt;span style="color: #8b008b"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: red"&gt;&amp;lt;#&lt;/span&gt;&lt;span style="color: blue"&gt;= &lt;/span&gt;&lt;span style="color: #8b008b"&gt;host.GetModelClass(host.TableName) #&amp;gt;&lt;/span&gt;&lt;span style="color: black"&gt;&amp;gt;.Register(e =&amp;gt; e.&lt;/span&gt;&lt;span style="color: #8b008b"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: red"&gt;#&lt;/span&gt;&lt;span style="color: blue"&gt;= &lt;/span&gt;&lt;span style="color: #8b008b"&gt;c.ColumnName #&amp;gt;&lt;/span&gt;&lt;span style="color: black"&gt;);&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;29:  &lt;/span&gt;&lt;span style="color: black"&gt;        public &lt;/span&gt;&lt;span style="color: #8b008b"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: red"&gt;#&lt;/span&gt;&lt;span style="color: blue"&gt;= &lt;/span&gt;&lt;span style="color: #8b008b"&gt;CodeCommon.DbTypeToCS(c.TypeName) #&amp;gt; &amp;lt;&lt;/span&gt;&lt;span style="color: red"&gt;#&lt;/span&gt;&lt;span style="color: blue"&gt;= &lt;/span&gt;&lt;span style="color: #8b008b"&gt;c.ColumnName #&amp;gt;&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;30:  &lt;/span&gt;&lt;span style="color: #8b008b"&gt;        &lt;/span&gt;&lt;span style="color: black"&gt;{&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;31:  &lt;/span&gt;&lt;span style="color: black"&gt;            get { return this.GetProperty(&lt;/span&gt;&lt;span style="color: #8b008b"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: red"&gt;#&lt;/span&gt;&lt;span style="color: blue"&gt;= &lt;/span&gt;&lt;span style="color: #8b008b"&gt;c.ColumnName #&amp;gt;&lt;/span&gt;&lt;span style="color: black"&gt;Property); }&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;32:  &lt;/span&gt;&lt;span style="color: black"&gt;            set { this.SetProperty(&lt;/span&gt;&lt;span style="color: #8b008b"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: red"&gt;#&lt;/span&gt;&lt;span style="color: blue"&gt;= &lt;/span&gt;&lt;span style="color: #8b008b"&gt;c.ColumnName #&amp;gt;&lt;/span&gt;&lt;span style="color: black"&gt;Property, value); }&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;33:  &lt;/span&gt;&lt;span style="color: black"&gt;        }        &lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;34:  &lt;/span&gt;&lt;span style="color: black"&gt;        &lt;/span&gt;&lt;span style="color: #8b008b"&gt;&amp;lt;# } #&amp;gt; &lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;35:  &lt;/span&gt;&lt;span style="color: #8b008b"&gt;    &lt;/span&gt;&lt;span style="color: black"&gt;}&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;36:  &lt;/span&gt;&lt;span style="color: black"&gt;&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;37:  &lt;/span&gt;&lt;span style="color: black"&gt;    [Serializable]&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;38:  &lt;/span&gt;&lt;span style="color: black"&gt;    public class &lt;/span&gt;&lt;span style="color: #8b008b"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: red"&gt;#&lt;/span&gt;&lt;span style="color: blue"&gt;= &lt;/span&gt;&lt;span style="color: #8b008b"&gt;host.GetModelClass(host.TableName) #&amp;gt;&lt;/span&gt;&lt;span style="color: black"&gt;List : MyEntityList&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;39:  &lt;/span&gt;&lt;span style="color: black"&gt;    {&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;40:  &lt;/span&gt;&lt;span style="color: black"&gt;        public &lt;/span&gt;&lt;span style="color: #8b008b"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: red"&gt;#&lt;/span&gt;&lt;span style="color: blue"&gt;= &lt;/span&gt;&lt;span style="color: #8b008b"&gt;host.GetModelClass(host.TableName) #&amp;gt;&lt;/span&gt;&lt;span style="color: black"&gt;List()&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;41:  &lt;/span&gt;&lt;span style="color: black"&gt;        {&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;42:  &lt;/span&gt;&lt;span style="color: black"&gt;&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;43:  &lt;/span&gt;&lt;span style="color: black"&gt;        }     &lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;44:  &lt;/span&gt;&lt;span style="color: black"&gt;    }&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;45:  &lt;/span&gt;&lt;span style="color: black"&gt;&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;46:  &lt;/span&gt;&lt;span style="color: black"&gt;    public class &lt;/span&gt;&lt;span style="color: #8b008b"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: red"&gt;#&lt;/span&gt;&lt;span style="color: blue"&gt;= &lt;/span&gt;&lt;span style="color: #8b008b"&gt;host.GetModelClass(host.TableName) #&amp;gt;&lt;/span&gt;&lt;span style="color: black"&gt;Repository : EntityRepository&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;47:  &lt;/span&gt;&lt;span style="color: black"&gt;    {&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;48:  &lt;/span&gt;&lt;span style="color: black"&gt;        protected &lt;/span&gt;&lt;span style="color: #8b008b"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: red"&gt;#&lt;/span&gt;&lt;span style="color: blue"&gt;= &lt;/span&gt;&lt;span style="color: #8b008b"&gt;host.GetModelClass(host.TableName) #&amp;gt;&lt;/span&gt;&lt;span style="color: black"&gt;Repository() { }&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;49:  &lt;/span&gt;&lt;span style="color: black"&gt;    }&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;50:  &lt;/span&gt;&lt;span style="color: black"&gt;&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;51:  &lt;/span&gt;&lt;span style="color: black"&gt;    internal class &lt;/span&gt;&lt;span style="color: #8b008b"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: red"&gt;#&lt;/span&gt;&lt;span style="color: blue"&gt;= &lt;/span&gt;&lt;span style="color: #8b008b"&gt;host.GetModelClass(host.TableName) #&amp;gt;&lt;/span&gt;&lt;span style="color: black"&gt;Config : EntityConfig&lt;/span&gt;&lt;span style="color: #8b008b"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: red"&gt;&amp;lt;#&lt;/span&gt;&lt;span style="color: blue"&gt;= &lt;/span&gt;&lt;span style="color: #8b008b"&gt;host.GetModelClass(host.TableName) #&amp;gt;&lt;/span&gt;&lt;span style="color: black"&gt;&amp;gt;&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;52:  &lt;/span&gt;&lt;span style="color: black"&gt;    {&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;53:  &lt;/span&gt;&lt;span style="color: black"&gt;        protected override void ConfigMeta()&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;54:  &lt;/span&gt;&lt;span style="color: black"&gt;        {&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;55:  &lt;/span&gt;&lt;span style="color: black"&gt;            base.ConfigMeta();&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;56:  &lt;/span&gt;&lt;span style="color: black"&gt;&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;57:  &lt;/span&gt;&lt;span style="color: black"&gt;            Meta.MapAllPropertiesToTable();&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;58:  &lt;/span&gt;&lt;span style="color: black"&gt;            &lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;59:  &lt;/span&gt;&lt;span style="color: black"&gt;            //基础数据启用分布式缓存&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;60:  &lt;/span&gt;&lt;span style="color: black"&gt;            //Meta.EnableCache();&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;61:  &lt;/span&gt;&lt;span style="color: black"&gt;        }&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;62:  &lt;/span&gt;&lt;span style="color: black"&gt;&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;63:  &lt;/span&gt;&lt;span style="color: black"&gt;        protected override void ConfigView()&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;64:  &lt;/span&gt;&lt;span style="color: black"&gt;        {&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;65:  &lt;/span&gt;&lt;span style="color: black"&gt;            base.ConfigView();&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;66:  &lt;/span&gt;&lt;span style="color: black"&gt;        &lt;/span&gt;&lt;span style="color: #8b008b"&gt;&amp;lt;# foreach (ColumnInfo c in host.Fieldlist)&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;67:  &lt;/span&gt;&lt;span style="color: #8b008b"&gt;        { #&amp;gt; &lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;68:  &lt;/span&gt;&lt;span style="color: #8b008b"&gt;        &lt;/span&gt;&lt;span style="color: black"&gt;View.Property(&lt;/span&gt;&lt;span style="color: #8b008b"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: red"&gt;#&lt;/span&gt;&lt;span style="color: blue"&gt;= &lt;/span&gt;&lt;span style="color: #8b008b"&gt;host.GetModelClass(host.TableName) #&amp;gt;&lt;/span&gt;&lt;span style="color: black"&gt;.&lt;/span&gt;&lt;span style="color: #8b008b"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: red"&gt;#&lt;/span&gt;&lt;span style="color: blue"&gt;= &lt;/span&gt;&lt;span style="color: #8b008b"&gt;c.ColumnName #&amp;gt;&lt;/span&gt;&lt;span style="color: black"&gt;Property).HasLabel(&amp;quot;&lt;/span&gt;&lt;span style="color: #8b008b"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: red"&gt;#&lt;/span&gt;&lt;span style="color: blue"&gt;= &lt;/span&gt;&lt;span style="color: #8b008b"&gt;string.IsNullOrEmpty(c.Description)  ? c.ColumnName : c.Description #&amp;gt;&lt;/span&gt;&lt;span style="color: black"&gt;&amp;quot;).ShowIn(ShowInWhere.All);&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;69:  &lt;/span&gt;&lt;span style="color: black"&gt;        &lt;/span&gt;&lt;span style="color: #8b008b"&gt;&amp;lt;# } #&amp;gt; &lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;70:  &lt;/span&gt;&lt;span style="color: #8b008b"&gt;        &lt;/span&gt;&lt;span style="color: black"&gt;}&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;71:  &lt;/span&gt;&lt;span style="color: black"&gt;    }&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;72:  &lt;/span&gt;&lt;span style="color: black"&gt;}&lt;/span&gt;  &lt;/div&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;直接把上面的代码保存 *.cmt 格式的文件就可以了。&lt;/p&gt;  &lt;p&gt;生成出来的效果是：&lt;/p&gt;  &lt;div style="border-bottom: #4f81bd 1px solid; text-align: left; border-left: #4f81bd 1px solid; line-height: 18px; background-color: white; margin: 0px; width: 100%; font-family: &amp;#39;Courier New&amp;#39;,&amp;#39;Consolas&amp;#39;,&amp;#39;Fixedsys&amp;#39;,&amp;#39;BitStream Vera Sans Mono&amp;#39;, courier,monospace,serif; color: black; font-size: 12px; overflow: auto; border-top: #4f81bd 1px solid; border-right: #4f81bd 1px solid"&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;  1:  &lt;/span&gt;&lt;span style="color: blue"&gt;using &lt;/span&gt;&lt;span style="color: black"&gt;System;&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;  2:  &lt;/span&gt;&lt;span style="color: black"&gt;&lt;/span&gt;&lt;span style="color: blue"&gt;using &lt;/span&gt;&lt;span style="color: black"&gt;System.Collections.Generic;&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;  3:  &lt;/span&gt;&lt;span style="color: black"&gt;&lt;/span&gt;&lt;span style="color: blue"&gt;using &lt;/span&gt;&lt;span style="color: black"&gt;System.Linq;&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;  4:  &lt;/span&gt;&lt;span style="color: black"&gt;&lt;/span&gt;&lt;span style="color: blue"&gt;using &lt;/span&gt;&lt;span style="color: black"&gt;System.Text;&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;  5:  &lt;/span&gt;&lt;span style="color: black"&gt;&lt;/span&gt;&lt;span style="color: blue"&gt;using &lt;/span&gt;&lt;span style="color: black"&gt;OEA.Library;&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;  6:  &lt;/span&gt;&lt;span style="color: black"&gt;&lt;/span&gt;&lt;span style="color: blue"&gt;using &lt;/span&gt;&lt;span style="color: black"&gt;OEA.MetaModel;&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;  7:  &lt;/span&gt;&lt;span style="color: black"&gt;&lt;/span&gt;&lt;span style="color: blue"&gt;using &lt;/span&gt;&lt;span style="color: black"&gt;OEA.MetaModel.Attributes;&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;  8:  &lt;/span&gt;&lt;span style="color: black"&gt;&lt;/span&gt;&lt;span style="color: blue"&gt;using &lt;/span&gt;&lt;span style="color: black"&gt;OEA.MetaModel.View;&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;  9:  &lt;/span&gt;&lt;span style="color: black"&gt;&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt; 10:  &lt;/span&gt;&lt;span style="color: black"&gt;&lt;/span&gt;&lt;span style="color: blue"&gt;namespace  &lt;/span&gt;&lt;span style="color: black"&gt;Maticsoft &lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt; 11:  &lt;/span&gt;&lt;span style="color: black"&gt;{&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt; 12:  &lt;/span&gt;&lt;span style="color: black"&gt;        &lt;/span&gt;&lt;span style="color: green"&gt;//HeatingType&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt; 13:  &lt;/span&gt;&lt;span style="color: green"&gt;        &lt;/span&gt;&lt;span style="color: black"&gt;[RootEntity, Serializable]&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt; 14:  &lt;/span&gt;&lt;span style="color: black"&gt;    &lt;/span&gt;&lt;span style="color: blue"&gt;public class &lt;/span&gt;&lt;span style="color: black"&gt;HeatingType : MyEntity&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt; 15:  &lt;/span&gt;&lt;span style="color: black"&gt;    {&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt; 16:  &lt;/span&gt;&lt;span style="color: black"&gt;       &lt;/span&gt;&lt;span style="color: gray"&gt;/// &amp;lt;summary&amp;gt;&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt; 17:  &lt;/span&gt;&lt;span style="color: gray"&gt;        /// &lt;/span&gt;&lt;span style="color: green"&gt;id&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt; 18:  &lt;/span&gt;&lt;span style="color: green"&gt;        &lt;/span&gt;&lt;span style="color: gray"&gt;/// &amp;lt;/summary&amp;gt;        &lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt; 19:  &lt;/span&gt;&lt;span style="color: gray"&gt;        &lt;/span&gt;&lt;span style="color: blue"&gt;public &lt;/span&gt;&lt;span style="color: brown"&gt;static readonly &lt;/span&gt;&lt;span style="color: black"&gt;Property&amp;lt;&lt;/span&gt;&lt;span style="color: blue"&gt;int&lt;/span&gt;&lt;span style="color: black"&gt;&amp;gt; idProperty = P&amp;lt;HeatingType&amp;gt;.&lt;/span&gt;&lt;span style="color: #191970"&gt;Register&lt;/span&gt;&lt;span style="color: black"&gt;(e =&amp;gt; e.id);&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt; 20:  &lt;/span&gt;&lt;span style="color: black"&gt;        &lt;/span&gt;&lt;span style="color: blue"&gt;public int &lt;/span&gt;&lt;span style="color: black"&gt;id&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt; 21:  &lt;/span&gt;&lt;span style="color: black"&gt;        {&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt; 22:  &lt;/span&gt;&lt;span style="color: black"&gt;            &lt;/span&gt;&lt;span style="color: blue"&gt;get &lt;/span&gt;&lt;span style="color: black"&gt;{ &lt;/span&gt;&lt;span style="color: blue"&gt;return this&lt;/span&gt;&lt;span style="color: black"&gt;.&lt;/span&gt;&lt;span style="color: #191970"&gt;GetProperty&lt;/span&gt;&lt;span style="color: black"&gt;(idProperty); }&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt; 23:  &lt;/span&gt;&lt;span style="color: black"&gt;            &lt;/span&gt;&lt;span style="color: blue"&gt;set &lt;/span&gt;&lt;span style="color: black"&gt;{ &lt;/span&gt;&lt;span style="color: blue"&gt;this&lt;/span&gt;&lt;span style="color: black"&gt;.&lt;/span&gt;&lt;span style="color: #191970"&gt;SetProperty&lt;/span&gt;&lt;span style="color: black"&gt;(idProperty, &lt;/span&gt;&lt;span style="color: blue"&gt;value&lt;/span&gt;&lt;span style="color: black"&gt;); }&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt; 24:  &lt;/span&gt;&lt;span style="color: black"&gt;        }        &lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt; 25:  &lt;/span&gt;&lt;span style="color: black"&gt;        &lt;/span&gt;&lt;span style="color: gray"&gt;/// &amp;lt;summary&amp;gt;&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt; 26:  &lt;/span&gt;&lt;span style="color: gray"&gt;        /// &lt;/span&gt;&lt;span style="color: green"&gt;ht_Name&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt; 27:  &lt;/span&gt;&lt;span style="color: green"&gt;        &lt;/span&gt;&lt;span style="color: gray"&gt;/// &amp;lt;/summary&amp;gt;        &lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt; 28:  &lt;/span&gt;&lt;span style="color: gray"&gt;        &lt;/span&gt;&lt;span style="color: blue"&gt;public &lt;/span&gt;&lt;span style="color: brown"&gt;static readonly &lt;/span&gt;&lt;span style="color: black"&gt;Property&amp;lt;&lt;/span&gt;&lt;span style="color: blue"&gt;string&lt;/span&gt;&lt;span style="color: black"&gt;&amp;gt; ht_NameProperty = P&amp;lt;HeatingType&amp;gt;.&lt;/span&gt;&lt;span style="color: #191970"&gt;Register&lt;/span&gt;&lt;span style="color: black"&gt;(e =&amp;gt; e.ht_Name);&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt; 29:  &lt;/span&gt;&lt;span style="color: black"&gt;        &lt;/span&gt;&lt;span style="color: blue"&gt;public string &lt;/span&gt;&lt;span style="color: black"&gt;ht_Name&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt; 30:  &lt;/span&gt;&lt;span style="color: black"&gt;        {&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt; 31:  &lt;/span&gt;&lt;span style="color: black"&gt;            &lt;/span&gt;&lt;span style="color: blue"&gt;get &lt;/span&gt;&lt;span style="color: black"&gt;{ &lt;/span&gt;&lt;span style="color: blue"&gt;return this&lt;/span&gt;&lt;span style="color: black"&gt;.&lt;/span&gt;&lt;span style="color: #191970"&gt;GetProperty&lt;/span&gt;&lt;span style="color: black"&gt;(ht_NameProperty); }&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt; 32:  &lt;/span&gt;&lt;span style="color: black"&gt;            &lt;/span&gt;&lt;span style="color: blue"&gt;set &lt;/span&gt;&lt;span style="color: black"&gt;{ &lt;/span&gt;&lt;span style="color: blue"&gt;this&lt;/span&gt;&lt;span style="color: black"&gt;.&lt;/span&gt;&lt;span style="color: #191970"&gt;SetProperty&lt;/span&gt;&lt;span style="color: black"&gt;(ht_NameProperty, &lt;/span&gt;&lt;span style="color: blue"&gt;value&lt;/span&gt;&lt;span style="color: black"&gt;); }&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt; 33:  &lt;/span&gt;&lt;span style="color: black"&gt;        }        &lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;134:  &lt;/span&gt;&lt;span style="color: black"&gt;     }&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;135:  &lt;/span&gt;&lt;span style="color: black"&gt;&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;136:  &lt;/span&gt;&lt;span style="color: black"&gt;    [Serializable]&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;137:  &lt;/span&gt;&lt;span style="color: black"&gt;    &lt;/span&gt;&lt;span style="color: blue"&gt;public class &lt;/span&gt;&lt;span style="color: black"&gt;HeatingType List : MyEntityList&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;138:  &lt;/span&gt;&lt;span style="color: black"&gt;    {&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;139:  &lt;/span&gt;&lt;span style="color: black"&gt;        &lt;/span&gt;&lt;span style="color: blue"&gt;public &lt;/span&gt;&lt;span style="color: #191970"&gt;HeatingTypeList&lt;/span&gt;&lt;span style="color: black"&gt;()&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;140:  &lt;/span&gt;&lt;span style="color: black"&gt;        {&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;141:  &lt;/span&gt;&lt;span style="color: black"&gt;&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;142:  &lt;/span&gt;&lt;span style="color: black"&gt;        }     &lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;143:  &lt;/span&gt;&lt;span style="color: black"&gt;    }&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;144:  &lt;/span&gt;&lt;span style="color: black"&gt;&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;145:  &lt;/span&gt;&lt;span style="color: black"&gt;    &lt;/span&gt;&lt;span style="color: blue"&gt;public class &lt;/span&gt;&lt;span style="color: black"&gt;HeatingType Repository : EntityRepository&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;146:  &lt;/span&gt;&lt;span style="color: black"&gt;    {&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;147:  &lt;/span&gt;&lt;span style="color: black"&gt;        &lt;/span&gt;&lt;span style="color: blue"&gt;protected &lt;/span&gt;&lt;span style="color: #191970"&gt;HeatingTypeRepository&lt;/span&gt;&lt;span style="color: black"&gt;() { }&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;148:  &lt;/span&gt;&lt;span style="color: black"&gt;    }&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;149:  &lt;/span&gt;&lt;span style="color: black"&gt;&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;150:  &lt;/span&gt;&lt;span style="color: black"&gt;    &lt;/span&gt;&lt;span style="color: blue"&gt;internal class &lt;/span&gt;&lt;span style="color: black"&gt;HeatingTypeConfig : EntityConfig&amp;lt;HeatingType&amp;gt;&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;151:  &lt;/span&gt;&lt;span style="color: black"&gt;    {&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;152:  &lt;/span&gt;&lt;span style="color: black"&gt;        &lt;/span&gt;&lt;span style="color: blue"&gt;protected &lt;/span&gt;&lt;span style="color: brown"&gt;override &lt;/span&gt;&lt;span style="color: blue"&gt;void &lt;/span&gt;&lt;span style="color: #191970"&gt;ConfigMeta&lt;/span&gt;&lt;span style="color: black"&gt;()&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;153:  &lt;/span&gt;&lt;span style="color: black"&gt;        {&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;154:  &lt;/span&gt;&lt;span style="color: black"&gt;            &lt;/span&gt;&lt;span style="color: blue"&gt;base&lt;/span&gt;&lt;span style="color: black"&gt;.&lt;/span&gt;&lt;span style="color: #191970"&gt;ConfigMeta&lt;/span&gt;&lt;span style="color: black"&gt;();&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;155:  &lt;/span&gt;&lt;span style="color: black"&gt;&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;156:  &lt;/span&gt;&lt;span style="color: black"&gt;            Meta.&lt;/span&gt;&lt;span style="color: #191970"&gt;MapAllPropertiesToTable&lt;/span&gt;&lt;span style="color: black"&gt;();&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;157:  &lt;/span&gt;&lt;span style="color: black"&gt;            &lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;158:  &lt;/span&gt;&lt;span style="color: black"&gt;            &lt;/span&gt;&lt;span style="color: green"&gt;//基础数据启用分布式缓存&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;159:  &lt;/span&gt;&lt;span style="color: green"&gt;            //Meta.EnableCache();&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;160:  &lt;/span&gt;&lt;span style="color: green"&gt;        &lt;/span&gt;&lt;span style="color: black"&gt;}&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;161:  &lt;/span&gt;&lt;span style="color: black"&gt;&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;162:  &lt;/span&gt;&lt;span style="color: black"&gt;        &lt;/span&gt;&lt;span style="color: blue"&gt;protected &lt;/span&gt;&lt;span style="color: brown"&gt;override &lt;/span&gt;&lt;span style="color: blue"&gt;void &lt;/span&gt;&lt;span style="color: #191970"&gt;ConfigView&lt;/span&gt;&lt;span style="color: black"&gt;()&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;163:  &lt;/span&gt;&lt;span style="color: black"&gt;        {&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;164:  &lt;/span&gt;&lt;span style="color: black"&gt;            &lt;/span&gt;&lt;span style="color: blue"&gt;base&lt;/span&gt;&lt;span style="color: black"&gt;.&lt;/span&gt;&lt;span style="color: #191970"&gt;ConfigView&lt;/span&gt;&lt;span style="color: black"&gt;();&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;165:  &lt;/span&gt;&lt;span style="color: black"&gt;         &lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;166:  &lt;/span&gt;&lt;span style="color: black"&gt;        View.&lt;/span&gt;&lt;span style="color: #191970"&gt;Property&lt;/span&gt;&lt;span style="color: black"&gt;(HeatingType.idProperty).&lt;/span&gt;&lt;span style="color: #191970"&gt;HasLabel&lt;/span&gt;&lt;span style="color: black"&gt;(&lt;/span&gt;&lt;span style="color: magenta"&gt;&amp;quot;id&amp;quot;&lt;/span&gt;&lt;span style="color: black"&gt;).&lt;/span&gt;&lt;span style="color: #191970"&gt;ShowIn&lt;/span&gt;&lt;span style="color: black"&gt;(ShowInWhere.All);&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;167:  &lt;/span&gt;&lt;span style="color: black"&gt;        &lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;168:  &lt;/span&gt;&lt;span style="color: black"&gt;        View.&lt;/span&gt;&lt;span style="color: #191970"&gt;Property&lt;/span&gt;&lt;span style="color: black"&gt;(HeatingType.ht_NameProperty).&lt;/span&gt;&lt;span style="color: #191970"&gt;HasLabel&lt;/span&gt;&lt;span style="color: black"&gt;(&lt;/span&gt;&lt;span style="color: magenta"&gt;&amp;quot;ht_Name&amp;quot;&lt;/span&gt;&lt;span style="color: black"&gt;).&lt;/span&gt;&lt;span style="color: #191970"&gt;ShowIn&lt;/span&gt;&lt;span style="color: black"&gt;(ShowInWhere.All);&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;169:  &lt;/span&gt;&lt;span style="color: black"&gt;        &lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;192:  &lt;/span&gt;&lt;span style="color: black"&gt;         }&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;193:  &lt;/span&gt;&lt;span style="color: black"&gt;    }&lt;/span&gt;    &lt;span style="line-height: 18px; color: #4f81bd"&gt;194:  &lt;/span&gt;&lt;span style="color: black"&gt;}&lt;/span&gt;  &lt;/div&gt;&lt;/blockquote&gt;&lt;img src="http://www.cnblogs.com/luomingui/aggbug/2526143.html?type=0" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/luomingui/archive/2012/05/30/2526143.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/haitao-fan/archive/2012/05/30/2526142.html</id><title type="text">VPN的分类</title><summary type="text"/><published>2012-05-30T05:36:00Z</published><updated>2012-05-30T05:36:00Z</updated><author><name>范海涛</name><uri>http://www.cnblogs.com/haitao-fan/</uri></author><link rel="alternate" href="http://www.cnblogs.com/haitao-fan/archive/2012/05/30/2526142.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/haitao-fan/archive/2012/05/30/2526142.html"/><content type="html">&lt;p&gt;VPN主要有PPTP，L2TP，IPsec，MLPS等标准类型。   &lt;br /&gt;a）PPT/L2TP：    &lt;br /&gt;PPTP和 L2TP都是OSI第二层的VPN，也是较早期的VPN协议，在IPsec出现前是最主要的VPN类型，今天使用仍然相当广泛，典型地是使用两台托管的Windows 2000服务器作为VPN网关。前者是微软在1996年制定，后者则由CISCO汇同微软在PPTP和L2F的基础上制定。第二层协议对ＰＰＰ协议本身并没有做任何修改，只是将用户的 PPP帧基于GRE封装成IP报文。    &lt;br /&gt;PPTP和L2TF均具有简单易行的优点，但是它们的可扩展性都不好。更重要的是，它们都没有提供内在的安全机制，它们不能支持企业和企业的外部客户以及供应商之间会话的保密性需求，因此它们不支持用来连接企业内部网和企业的外部客户及供应商的企业外部网Extranet的概念。Extranet需要对隧道进行加密并需要相应的密钥管理机制。PPTP和L2TP限制同时最多只能连接255个用户。端点用户需要在连接前手工建立加密信道。认证和加密受到限制，没有强加密和认证支持。安全程度差，是PPTP/L2TF简易型VPN最大的弱点。    &lt;br /&gt;PPTP和L2TP最适合用于客户端远程访问虚拟专用网，作为安全要求高的企业信息，使用PPTP/L2TP与明文传送的差别不大。PPTP/L2TP不适合于向Ipv6的转移。    &lt;br /&gt;b)IPsec（安全IP）:    &lt;br /&gt;IPSec是IETF(Internet Engineer Task Force)完善的安全标准，它把几种安全技术结合在一起形成一个较为完整的体系，通过对数据加密、认证、完整性检查来保证数据传输的可靠性、私有性和保密性。IPSec由IP认证头AH(Authentication Header)、IP安全载荷封载ESP(Encapsulated Security Payload)和密钥管理协议组成。是目前支持最广泛的VPN协议。    &lt;br /&gt;IPSec协议是一个范围广泛、开放的虚拟专用网安全协议。IPSec适应向IP v6迁移，它提供所有在网络层上的数据保护，提供透明的安全通信。IPSec用密码技术从三个方面来保证数据的安全。即：    &lt;br /&gt;认证：用于对主机和端点进行身份鉴别。    &lt;br /&gt;完整性检查：用于保证数据在通过网络传输时没有被修改。    &lt;br /&gt;加密：加密IP地址和数据以保证私有性。    &lt;br /&gt;IPsec是完全意义上的VPN，能直接与PKI、CA设备密切协同完成认证功能。IPSec的缺占是需要固定范围的IP地址，因此在动态分配IP地址时不太适合于IPSec。（图腾VPN是目前不多的部分支持动态IP的VPN网关技术）；除了TCP/IP协议外，IPSec不支持其他协议。除了包过滤之外，它没有指定其他访问控制方法。另外，微软在windows中没有集成对IPSec的支持，因此，windows客户端需要专门的软件或硬件的支持。    &lt;br /&gt;IPSec最适合可信的网关到网关之间的虚拟专用网，即企业广域网(Extranet)的构建。    &lt;br /&gt;c）MPLS VPN    &lt;br /&gt;MPLS VPN是与IPsec同级的，同样由IETF制度的，与IPsec互补的VPN的标准。IETF IPsec工作组（属于Security Area部分）的工作主要涉及网络层的保护方面，所以该组设计了加密安全机制以便灵活地支持认证、完整性、访问控制和系统加密；而IETF MPLS工作组（属于Routing Area部分）则在从另一方面着手开发了支持高层资源预留、QoS和主机行为定义的机制。    &lt;br /&gt;MPLS VPN广泛用于ISP直接向VPN客户提供专线VPN的服务。与IPsec的对比如下：    &lt;br /&gt;&amp;#160; &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; IPsec VPN&amp;#160;&amp;#160;&amp;#160; MPLS VPN&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;br /&gt;服务模式&amp;#160;&amp;#160;&amp;#160; 高速Internet服务、商业质量的IP服务、电子商务和应用主机托管服务&amp;#160;&amp;#160;&amp;#160; 高速Internet服务、商业质量的IP服务、电子商务和应用主机托管服务&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/p&gt;  &lt;p&gt;可伸缩性&amp;#160;&amp;#160;&amp;#160; 大规模部署需要制定相应计划并且协同解决关键分支机构、关键管理和对等配置各个方面出现的问题&amp;#160;&amp;#160;&amp;#160; 由于不需要站点对站点的对等性而具有高度的可伸缩性。典型的MPLS-VPN部署能够支持在同一网络上部署上万个VPN组&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/p&gt;  &lt;p&gt;   &lt;br /&gt;网络位置    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; 本地环路、网络边缘或者远离存在加密数据较高曝光性的网络位置最佳，此类地点最适合采用隧道和加密等IPsec安全机制&amp;#160;&amp;#160;&amp;#160; 在服务供应商的核心网络最佳，此地QoS、流量工程和带宽利用可以得到完全地控制，如果服务供应商的VPN服务提供SLA或者服务级保证（SLG），那么这一情况下的VPN服务更应该配置在网络核心。&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;br /&gt;VPN的关键技术参数    &lt;br /&gt;VPN产品的关键技术参数包括：支持那些标准（IPsec，PPTP，L2TP，MSLP，SOCK5），支持那些加密算法；最大加密强度是多少；是否支持公钥体系（PKI），及IKE密钥管理等。    &lt;/p&gt;&lt;img src="http://www.cnblogs.com/haitao-fan/aggbug/2526142.html?type=0" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/haitao-fan/archive/2012/05/30/2526142.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/yjf512/archive/2012/05/30/2526136.html</id><title type="text">Unix家族编年史</title><summary type="text"/><published>2012-05-30T05:30:00Z</published><updated>2012-05-30T05:30:00Z</updated><author><name>轩脉刃</name><uri>http://www.cnblogs.com/yjf512/</uri></author><link rel="alternate" href="http://www.cnblogs.com/yjf512/archive/2012/05/30/2526136.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/yjf512/archive/2012/05/30/2526136.html"/><content type="html">&lt;p&gt;Unix是多用户、多任务的操作系统，它的历史悠久，也有多种版本。在Unix接触过程中常使用到的词，BSD，Linux等。初学者，甚至是接触unix很久的用户也未必对其家谱了如指掌。这篇文章描述的是Unix的族谱和发展历史。&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;1969年，Unix的前身Unics出现&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;作者：&lt;/p&gt;  &lt;p&gt;&lt;a href="http://images.cnblogs.com/cnblogs_com/yjf512/201205/20120530132932206.jpg"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="clip_image001" border="0" alt="clip_image001" src="http://images.cnblogs.com/cnblogs_com/yjf512/201205/201205301329327349.jpg" width="204" height="133" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;肯·汤普逊（左）和丹尼斯·里奇（右）&lt;/p&gt;  &lt;p&gt;Unix版本是由美国电话电报公司（AT&amp;amp;T）进行维护升级的。他们两位是AT&amp;amp;T的贝尔实验室部门的员工&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;1971年，第一版Unix出现&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;这个版本，Unix系统是由汇编语言完成的&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;1973年，第三版Unix出现&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Ken Thompson 与Dennis Ritchie成功地用C语言重写了Unix的第三版内核。&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;1978年，BSD第一版发版&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;此时Unix已经发布到第六个版本了。BSD（Berkeley Software Distribution ）是由伯克利大学推出的。这个版本开创了Unix的另一个分支：BSD系列。&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;1979年，Unix第七个版本出现&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;从这个版本之后，AT&amp;amp;T开发的Unix就走向了商业非开源道路。&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;1982年，AT&amp;amp;T开发出了System III商业系统，Berkeley也对应的推出BSD3，BSD4.1，BSD4.2&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;这里必须提到的是BSD最先实现了TCP/IP,使得Internet和Unix紧密结合在了一起。美国国防部项目ARPANET就是以BSD Unix作为研究系统的，ARPANET发展为了今天的Internet&lt;/p&gt;  &lt;p&gt;AT&amp;amp;T开发的SystemIII以及后面开发的SystemV等系列的Unix也是非常优秀的，但是由于其商业化，因此它的影响力远远没有BSD那么大。后面就不再对AT&amp;amp;T的Unix发布版本进行描述了&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;1986年&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Berkeley大学的Bill Joy基于BSD 4.1的基础上开发了SunOS操作系统。并成立了大名鼎鼎的Sun公司。SunOS走的是商业路线&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;1985-1991年&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;这个时段BSD由于受昂贵的AT&amp;amp;T的Unix的影响，产生了很多个版本，SunOS、BSD-Reno,BSD-net等&lt;/p&gt;  &lt;p&gt;这个时段需要提起的几个操作系统：&lt;/p&gt;  &lt;p&gt;1 MINIX： 1987年推出，基于微内核架构的类Unix操作系统。&lt;/p&gt;  &lt;p&gt;2 386BSD: 1992年推出，第一个面向Intel 386 CPU设计的BSD操作系统。&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;1991年, Linux操作系统诞生&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;linux操作系统是现在世界使用最多的一种Unix类操作系统。linux操作系统的发展和成长依赖着五个重要的支柱：UNIX操作系统，MINIX操作系统，GUN计划，POSIX标准和INTERNET网络&lt;/p&gt;  &lt;p&gt;&lt;a href="http://images.cnblogs.com/cnblogs_com/yjf512/201205/201205301329329824.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="clip_image001" border="0" alt="clip_image001" src="http://images.cnblogs.com/cnblogs_com/yjf512/201205/201205301329332300.png" width="171" height="204" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Linux操作系统的作者Linus Benedict Torvalds是师从MININX，开发linux的时候，他花时间研究MINIX，386BSD系统，后成功将GUN软件（gcc，bash，gdb等）移植到Linux上。并且在他发布的时候宣称，linux操作系统没有一行MINIX的源代码。并于1991年10月5日发布Linux内核。因此说Linux不是Unix，而是一个Unix-like操作系统。&lt;/p&gt;  &lt;p&gt;Linux一经发布，就引起了很多追随者，后话是Linux也产生了很多演变版本：&lt;/p&gt;  &lt;p&gt;Red Hat, Suse, Debian, CentOS，Android&lt;/p&gt;  &lt;p&gt;这里顺便介绍一下POSIX：&lt;/p&gt;  &lt;p&gt;POSIX是IEEE规定的操作系统应该实现的接口，以增加应用程序的可移植性。现在POSIX并不局限于UNIX和linux，Windows NT等也已经支持POSIX标准。&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;1991年之后&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;1991年之后，BSD在第一轮分化之后继续演变，不同的组织和个人根据自己的需求来对BSD进行裁剪。演变到现代比较出名的几个版本：&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;FreeBSD&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;出现于1993年，是386BSD的学生。产生是由于386BSD的合理性受到了挑战和诉讼，因而全面改写386BSD而产生的。FreeBSD和其名字一样，是安装BSD许可协议开源发布，也欢迎全世界的志愿者开发和维护。并且为不同架构的计算机提供不同的支持。&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;NetBSD&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;出现于1993年，也是从386BSD基础上发展起来的。它可能是世界上最容易移植的操作系统（超过20种平台被支持）。它也是开源的。&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;OpenBSD&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;OPENBSD是由NetBSD衍生出来的，开发的初衷是希望能创造出一个注重安全的操作系统。它最值得称道的是它的安全性： “在预设安装下，超过十年的时间只有两个远端漏洞被发现”&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Mac OS&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;大名鼎鼎的Apple公司的操作系统。&lt;/p&gt;  &lt;p&gt;后言：关于Unix的族谱的图片推荐看下面两个图:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://baike.baidu.com/albums/8095/8095/0/0.html#0$0b14ad19e9b0521542a9ad62" target="_blank"&gt;百度百科&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://new.51cto.com/files/uploadimg/20081210/162406575.gif" target="_blank"&gt;51CTO&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;参考资料&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://baike.baidu.com/view/1634.htm" target="_blank"&gt;百度百科_Linux&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://baike.baidu.com/view/8095.htm" target="_blank"&gt;百度百科_Unix&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://baike.baidu.com/view/209692.htm" target="_blank"&gt;百度百科_BSD&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://baike.baidu.com/albums/8095/8095/0/0.html#0$0b14ad19e9b0521542a9ad62" target="_blank"&gt;图片百科&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://os.51cto.com/art/200810/92024.htm" target="_blank"&gt;Unix/Linux历史和大事记&lt;/a&gt;&lt;/p&gt;  &lt;div id="MySignature"&gt;&lt;a href="http://creativecommons.org/licenses/by-nc/3.0/deed.zh" rel="license" target="_blank"&gt;&lt;img style="border-right-width: 0pt; border-top-width: 0pt; border-bottom-width: 0pt; border-left-width: 0pt" alt="Creative Commons License" align="left" src="http://i.creativecommons.org/l/by-nc/3.0/88x31.png" /&gt;&lt;/a&gt;     &lt;p&gt;本文基于&lt;a title="Attribution-NonCommercial 3.0 Unported" href="http://creativecommons.org/licenses/by-nc/3.0/deed.zh" target="_blank"&gt;署名-非商业性使用 3.0&lt;/a&gt;许可协议发布，欢迎转载，演绎，但是必须保留本文的署名&lt;a href="http://www.cnblogs.com/yjf512/" target="_blank"&gt;叶剑峰&lt;/a&gt;（包含链接http://www.cnblogs.com/yjf512/），且不得用于商业目的。如您有任何疑问或者授权方面的协商，请&lt;a href="mailto:jianfengye110@gmail.com" target="_blank"&gt;与我联系&lt;/a&gt;。&lt;/p&gt; &lt;/div&gt;&lt;img src="http://www.cnblogs.com/yjf512/aggbug/2526136.html?type=0" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/yjf512/archive/2012/05/30/2526136.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/zyizyizyi/archive/2012/05/30/2526137.html</id><title type="text">CSMS2软件架构</title><summary type="text"/><published>2012-05-30T05:30:00Z</published><updated>2012-05-30T05:30:00Z</updated><author><name>zyi</name><uri>http://www.cnblogs.com/zyizyizyi/</uri></author><link rel="alternate" href="http://www.cnblogs.com/zyizyizyi/archive/2012/05/30/2526137.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/zyizyizyi/archive/2012/05/30/2526137.html"/><content type="html">&lt;p align="center"&gt;&lt;strong&gt;&lt;span style="font-size: 24pt"&gt;CSMS2&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-family: 宋体; font-size: 24pt"&gt;软件架构&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-size: 24pt"&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;span style="font-family: 宋体"&gt;概述&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: '微软雅黑','sans-serif'; font-size: 12pt"&gt;系统采用C/S架构，使用Dotnet 4.0框架。系统基于多层(N-Layer)架构进行设计和开发。系统分为表示层、应用层、业务逻辑层、引擎调度层、引擎层、服务层、基础架构层、实体层、资源层等多层。下图为项目的分层效果图：&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;span style="font-family: 宋体"&gt;表示层&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: '微软雅黑','sans-serif'; font-size: 12pt"&gt;CSMS2.Presentation&lt;/span&gt;&lt;span style="font-family: '微软雅黑','sans-serif'; font-size: 12pt"&gt;也称界面层，所有的UI界面都会放到这一层实现。表示层的目标是保持它尽可能的薄，这一点和应用层相似。表示层需要避免嵌入业务逻辑。表示层有两个主要责任：&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: '微软雅黑','sans-serif'; font-size: 12pt"&gt;1)&lt;span style="font: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: '微软雅黑','sans-serif'; font-size: 12pt"&gt;解释用户命令，将请求发送到应用层&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: '微软雅黑','sans-serif'; font-size: 12pt"&gt;2)&lt;span style="font: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: '微软雅黑','sans-serif'; font-size: 12pt"&gt;显示信息给用户&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: '微软雅黑','sans-serif'; font-size: 12pt"&gt;对于数据校验和动态查询系统都使用Entity上增加特性来实现。对于提示信息不允许直接使用中文，需要用GetString方法替换。GetString中写入对应的数值。具体的中文在对应的CSMS2.Resources的资源文件中。表示层需要调用的公共方法都在CSMS2.Infrastructure中。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: '微软雅黑','sans-serif'; font-size: 12pt"&gt;对于界面的.cs文件，要求每张界面都有制作人的说明，对于发现没有写的将等同编译不通过一样处理。对于每一个.cs文件的大小原则上不允许超过500行。对于选项卡过多的界面可以考虑使用UserControl或partial实现。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: '微软雅黑','sans-serif'; font-size: 12pt"&gt;最终的表现层只会有一个。由于迁移项目的需要，可以暂时建立CSMS2.Presentation.BiaoWuGL的项目。避免项目文件被迁出，不能使用的情况发生。如果是新窗体则应该建立好Form后，马上把项目签入。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;span style="font-family: 宋体"&gt;应用层&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: '微软雅黑','sans-serif'; font-size: 12pt"&gt;CSMS2.Application&lt;/span&gt;&lt;span style="font-family: '微软雅黑','sans-serif'; font-size: 12pt"&gt;应用层可以理解为应用编程接口(API)，它负责将表示层的请求发送给相应的服务层、业务逻辑层、引擎层、引擎调度层进行处理。换句话说应用层可以调用服务层、业务逻辑层、引擎层、引擎调度层。应用层没有任何的代码实现，它仅仅负责对其他层的方法调用。应用层使用WCF服务实现。制作时注意WCF用接口实现，必须实现对应的接口。应用层的命名就是对应的菜单大类名。比如BiaoWuGL.svc、XiTongPZ.svc、Common.svc等。现在比较模糊的可能是系统配置和公共的归类。XiTongPZ中只是定义系统配置界面的一些公共方法。比如YuanGongXX_BaoCun、CaiDanPZ_ChaXun等。而我们需要使用的一些公共方法比如根据大类获取词语列表、等等方法都将放在Common中。Application中方法会很多，原则上接口中的方法不应超过20个，但我们肯定超了。又不想在表示层引用过多的WCF，所以该层只做调用，并且不存在对多个方法的调用。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;span style="font-family: 宋体"&gt;业务逻辑层&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: '微软雅黑','sans-serif'; font-size: 12pt"&gt;CSMS2.BLL&lt;/span&gt;&lt;span style="font-family: '微软雅黑','sans-serif'; font-size: 12pt"&gt;业务逻辑层，该层将被应用层调用，该层将按照功能模块进行命名。命名规则需遵循&amp;lt; FunctionName&amp;gt;的命名规则，例如： ChaiBiao、FuZhuang等。对于属于引擎的增删改由对应的引擎实现。对于公共的数据库操作需调用服务实现。也就是说业务逻辑实际上被分成3块。服务、业务逻辑、引擎。这里比较纠结的应该是引擎的查询。这里暂做如下定义：对引擎的查询都直接使用存储过程或DataAccess的默认查询实现。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;span style="font-family: 宋体"&gt;服务层&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: '微软雅黑','sans-serif'; font-size: 12pt"&gt;CSMS2. Service&lt;/span&gt;&lt;span style="font-family: '微软雅黑','sans-serif'; font-size: 12pt"&gt;服务层，在写业务逻辑时，有些类的行为不适合放在任何一个类中。试图把某些行为放到一个不是真正拥有它的类中，会造成业务逻辑层的模糊。CSMS2将这些公共的方法放在服务层，供应用层、业务逻辑层或引擎层调用。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;span style="font-family: 宋体"&gt;引擎层&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: '微软雅黑','sans-serif'; font-size: 12pt"&gt;CSMS2.Engine&lt;/span&gt;&lt;span style="font-family: '微软雅黑','sans-serif'; font-size: 12pt"&gt;引擎层，该层被讨论多次，由多个相关的数据表组合成一个引擎，引擎对外统一暴露方法，供业务逻辑层调用。总体上分为表务引擎、客户关系引擎、待处理引擎等。具体哪些数据表属于什么引擎，由CSMS2项目负责人确认，各小组提出自己的意见。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;span style="font-family: 宋体"&gt;引擎调度层&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: '微软雅黑','sans-serif'; font-size: 12pt"&gt;CSMS2.EngineService&lt;/span&gt;&lt;span style="font-family: '微软雅黑','sans-serif'; font-size: 12pt"&gt;引擎调度层，有时候一个应用需要调用多个引擎，比如待处理转销时需调用待处理和特账两个引擎等。像这种需要多个引擎协调工作的方法放在引擎调度层。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;span style="font-family: 宋体"&gt;实体层&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: '微软雅黑','sans-serif'; font-size: 12pt"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; CSMS2.Entity&lt;/span&gt;&lt;span style="font-family: '微软雅黑','sans-serif'; font-size: 12pt"&gt;实体层，每一张数据表或视图都会建立对应的实体，对应的实体操作等会建立在CSMS2. DataAccess的命名空间下，但其实entity和dataaccess是生成在同一个文件中的。对应的模板暂由codesmith生成，项目已提供了小工具GenCode生成对应的代码。自动生成的sphelper也放在CSMS2.Entiy中，但命名空间使用CSMS2.StoredProcedure。鉴于目前存储过程过多的现状，生成时需指明大类名称。如：BiaoWUGL、DaiChuL等对于通用存储过程需指明Common。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;span style="font-family: 宋体"&gt;基础架构层&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: '微软雅黑','sans-serif'; font-size: 12pt"&gt;CSMS2.Infrastructure&lt;/span&gt;&lt;span style="font-family: '微软雅黑','sans-serif'; font-size: 12pt"&gt;基础架构层是所有CSMS2系统底层基础代码所在的地方。任何类型的非数据库交互的通用代码都将放在这一层。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;span style="font-family: 宋体"&gt;资源层&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: '微软雅黑','sans-serif'; font-size: 12pt"&gt;CSMS2.Resources&lt;/span&gt;&lt;span style="font-family: '微软雅黑','sans-serif'; font-size: 12pt"&gt;资源层主要是放入资源文件、非引用所必须的DLL、图片文件等程序需要访问的资源。生成时和主项目一起输出到Bind目录，保证主项目能够访问到这些资源。同时将其从表示层剥离出来，避免表现层文件过多。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;external-references&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: '微软雅黑','sans-serif'; font-size: 12pt"&gt;对于外部的DLL引用，统一使用放在external-references的解决方案目录下。避免引用绝对路径等问题。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;span style="font-family: 宋体"&gt;其他&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: '微软雅黑','sans-serif'; font-size: 12pt"&gt;一些项目需要，但不需要经常编译的项目会归入CSMS2.Tool的解决方案。主方案中直接使用DLL引用，DLL放在external-references中。方案中会包括更新、扫描控件、计划任务、一键发布、系统配置等功能。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;img src="http://www.cnblogs.com/zyizyizyi/aggbug/2526137.html?type=0" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/zyizyizyi/archive/2012/05/30/2526137.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/guoqiyang/archive/2012/05/30/2526138.html</id><title type="text">工作系统之脚本生成 求改进</title><summary type="text"/><published>2012-05-30T05:30:00Z</published><updated>2012-05-30T05:30:00Z</updated><author><name>挥剑问情</name><uri>http://www.cnblogs.com/guoqiyang/</uri></author><link rel="alternate" href="http://www.cnblogs.com/guoqiyang/archive/2012/05/30/2526138.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/guoqiyang/archive/2012/05/30/2526138.html"/><content type="html">&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;刚开始写程序。。所以写出这种代码来。。希望大家能帮忙改进一下&lt;/p&gt;&lt;p&gt;/// &amp;lt;summary&amp;gt;&lt;br /&gt;        /// 日报处理&lt;br /&gt;        /// &amp;lt;/summary&amp;gt;&lt;br /&gt;        /// &amp;lt;param name="data"&amp;gt;&amp;lt;/param&amp;gt;&lt;br /&gt;        /// &amp;lt;returns&amp;gt;&amp;lt;/returns&amp;gt;&lt;br /&gt;        public string DailyPaper2(string data)&lt;br /&gt;        {&lt;br /&gt;            //20120531&lt;br /&gt;            string a = "";&lt;br /&gt;            a = data.Substring(6, 2);&lt;br /&gt;            string s = "select ttt.业务类型,ttt.合同号,ttt.客户名称,ttt.代理,ttt.销售经理,ttt.电信帐号,";&lt;br /&gt;            string s2 = "";&lt;br /&gt;            string s3 = " from utdatabase.dbo.vwallcustomer as ttt ";&lt;br /&gt;            string s4 = "";&lt;br /&gt;            string s5 = "where ttt.电信帐号 is not null and ttt.客户状态='正常' and (";&lt;br /&gt;            string s6 = ""; string s7 = " )order by "; string s8 = "";&lt;/p&gt;&lt;p&gt;            //垃圾代码不得不写。。&lt;br /&gt;            #region&lt;br /&gt;            for (int i = 0; i &amp;lt; Convert.ToInt32(a); i++)&lt;br /&gt;            {&lt;br /&gt;                if (i == Convert.ToInt32(a) - 1)&lt;br /&gt;                {&lt;br /&gt;                    s2 += "isnull(t" + i + ".话费,0) as [201205" + (i + 1) + "]";&lt;br /&gt;                    break;&lt;br /&gt;                }&lt;br /&gt;                if (i &amp;lt; 9)&lt;br /&gt;                {&lt;br /&gt;                    string c = "0" + (i + 1);&lt;br /&gt;                    s2 += "isnull(t" + i + ".话费,0) as [201205" + c + "],";&lt;/p&gt;&lt;p&gt;&lt;br /&gt;                }&lt;/p&gt;&lt;p&gt;                else&lt;br /&gt;                {&lt;br /&gt;                    s2 += "isnull(t" + i + ".话费,0) as [201205" + (i + 1) + "],";&lt;br /&gt;                }&lt;br /&gt;            }&lt;/p&gt;&lt;p&gt;&lt;br /&gt;            for (int i = 0; i &amp;lt; Convert.ToInt32(a); i++)&lt;br /&gt;            {&lt;br /&gt;                if (i &amp;lt; 9)&lt;br /&gt;                {&lt;br /&gt;                    string c = "0" + (i + 1);&lt;/p&gt;&lt;p&gt;                    s4 += " left outer join utstatdata.dbo.dayamount201205" + c + " as t" + i + " on t" + i + ".电信帐号=ttt.电信帐号 ";&lt;br /&gt;                }&lt;/p&gt;&lt;p&gt;                else&lt;br /&gt;                {&lt;/p&gt;&lt;p&gt;                    s4 += " left outer join utstatdata.dbo.dayamount201205" + (i + 1) + " as t" + i + " on t" + i + ".电信帐号=ttt.电信帐号  ";&lt;br /&gt;                }&lt;br /&gt;            }&lt;/p&gt;&lt;p&gt;&lt;br /&gt;            for (int i = 0; i &amp;lt; Convert.ToInt32(a); i++)&lt;br /&gt;            {&lt;br /&gt;                if (i == 0)&lt;br /&gt;                {&lt;br /&gt;                    s6 = "t0.话费&amp;lt;&amp;gt;0 or ";&lt;br /&gt;                }&lt;br /&gt;                else&lt;br /&gt;                {&lt;/p&gt;&lt;p&gt;&lt;br /&gt;                    if (i == Convert.ToInt32(a) - 1)&lt;br /&gt;                    {&lt;br /&gt;                        s6 += "t" + i + ".话费&amp;lt;&amp;gt;0 ";&lt;br /&gt;                        break;&lt;br /&gt;                    }&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;                    s6 += "t" + i + ".话费&amp;lt;&amp;gt;0 or ";&lt;/p&gt;&lt;p&gt;                }&lt;/p&gt;&lt;p&gt;&lt;br /&gt;            }&lt;/p&gt;&lt;p&gt;            int q = Convert.ToInt32(a);&lt;br /&gt;            for (int i = 0; i &amp;lt; Convert.ToInt32(a); i++)&lt;br /&gt;            {&lt;/p&gt;&lt;p&gt;                if (q == 1)&lt;br /&gt;                {&lt;br /&gt;                    s8 += "t0.话费 desc";&lt;br /&gt;                }&lt;br /&gt;                else&lt;br /&gt;                {&lt;br /&gt;                    q = q - 1;&lt;/p&gt;&lt;p&gt;                    s8 += "t" + q + ".话费 desc,";&lt;/p&gt;&lt;p&gt;                }&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;            }&lt;br /&gt;            return s + s2 + s3 + s4 + s5 + s6 + s7 + s8;&lt;br /&gt;            #endregion&lt;br /&gt;        }&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;调用&lt;/p&gt;&lt;p&gt;jiaoben j = new jiaoben();&lt;/p&gt;&lt;p&gt; string sql = "";&lt;br /&gt;            sql = j.jiequ(textBox1.Text);&lt;br /&gt;            DataTable table = db.Getdatable(sql);&lt;br /&gt;            dataGridView2.DataSource = table;&lt;/p&gt;&lt;img src="http://www.cnblogs.com/guoqiyang/aggbug/2526138.html?type=0" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/guoqiyang/archive/2012/05/30/2526138.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/bingxueme/archive/2012/05/30/2526134.html</id><title type="text">MYSQL修改表单字符集</title><summary type="text"/><published>2012-05-30T05:28:00Z</published><updated>2012-05-30T05:28:00Z</updated><author><name>絕對零℃</name><uri>http://www.cnblogs.com/bingxueme/</uri></author><link rel="alternate" href="http://www.cnblogs.com/bingxueme/archive/2012/05/30/2526134.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/bingxueme/archive/2012/05/30/2526134.html"/><content type="html">&lt;p&gt;ALTER&amp;nbsp;&amp;nbsp; TABLE&amp;nbsp;&amp;nbsp; users&amp;nbsp;&amp;nbsp; CONVERT&amp;nbsp;&amp;nbsp; TO&amp;nbsp;&amp;nbsp; CHARACTER&amp;nbsp;&amp;nbsp; SET&amp;nbsp;&amp;nbsp; utf8;&lt;/p&gt;&lt;img src="http://www.cnblogs.com/bingxueme/aggbug/2526134.html?type=0" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/bingxueme/archive/2012/05/30/2526134.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/refactor/archive/2012/05/30/2526135.html</id><title type="text">SqlServer 日期转换 所有格式</title><summary type="text"/><published>2012-05-30T05:28:00Z</published><updated>2012-05-30T05:28:00Z</updated><author><name>refactor</name><uri>http://www.cnblogs.com/refactor/</uri></author><link rel="alternate" href="http://www.cnblogs.com/refactor/archive/2012/05/30/2526135.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/refactor/archive/2012/05/30/2526135.html"/><content type="html">&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;" onclick="cnblogs_code_show('5dabacb2-fe92-4ffb-957d-dfe2fc4df221')"&gt;&lt;div id="cnblogs_code_open_5dabacb2-fe92-4ffb-957d-dfe2fc4df221" class="cnblogs_code_hide"&gt;&lt;span style="color: #0000ff;"&gt;select&lt;/span&gt; &lt;span style="color: #ff00ff;"&gt;convert&lt;/span&gt;(&lt;span style="color: #0000ff;"&gt;varchar&lt;/span&gt;, &lt;span style="color: #ff00ff;"&gt;getdate&lt;/span&gt;(), &lt;span style="color: #800000; font-weight: bold;"&gt;120&lt;/span&gt;&lt;span style="color: #000000;"&gt; )&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;--&lt;/span&gt;&lt;span style="color: #008080;"&gt; 2009-07-30 11:06:08&lt;/span&gt;&lt;br/&gt;&lt;span style="color: #0000ff;"&gt;select&lt;/span&gt; &lt;span style="color: #ff00ff;"&gt;convert&lt;/span&gt;(&lt;span style="color: #0000ff;"&gt;varchar&lt;/span&gt;(&lt;span style="color: #800000; font-weight: bold;"&gt;12&lt;/span&gt;) , &lt;span style="color: #ff00ff;"&gt;getdate&lt;/span&gt;(), &lt;span style="color: #800000; font-weight: bold;"&gt;23&lt;/span&gt;&lt;span style="color: #000000;"&gt; )&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;--&lt;/span&gt;&lt;span style="color: #008080;"&gt; 2009-07-30&lt;/span&gt;&lt;br/&gt;&lt;span style="color: #0000ff;"&gt;select&lt;/span&gt; &lt;span style="color: #ff00ff;"&gt;convert&lt;/span&gt;(&lt;span style="color: #0000ff;"&gt;varchar&lt;/span&gt;(&lt;span style="color: #800000; font-weight: bold;"&gt;12&lt;/span&gt;) , &lt;span style="color: #ff00ff;"&gt;getdate&lt;/span&gt;(), &lt;span style="color: #800000; font-weight: bold;"&gt;105&lt;/span&gt;&lt;span style="color: #000000;"&gt; )&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;--&lt;/span&gt;&lt;span style="color: #008080;"&gt; 30-07-2009&lt;/span&gt;&lt;br/&gt;&lt;span style="color: #0000ff;"&gt;select&lt;/span&gt; &lt;span style="color: #ff00ff;"&gt;convert&lt;/span&gt;(&lt;span style="color: #0000ff;"&gt;varchar&lt;/span&gt;(&lt;span style="color: #800000; font-weight: bold;"&gt;12&lt;/span&gt;) , &lt;span style="color: #ff00ff;"&gt;getdate&lt;/span&gt;(), &lt;span style="color: #800000; font-weight: bold;"&gt;110&lt;/span&gt;&lt;span style="color: #000000;"&gt; )&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;--&lt;/span&gt;&lt;span style="color: #008080;"&gt; 07-30-2009&lt;/span&gt;&lt;br/&gt;&lt;span style="color: #0000ff;"&gt;select&lt;/span&gt; &lt;span style="color: #ff00ff;"&gt;convert&lt;/span&gt;(&lt;span style="color: #0000ff;"&gt;varchar&lt;/span&gt;(&lt;span style="color: #800000; font-weight: bold;"&gt;12&lt;/span&gt;) , &lt;span style="color: #ff00ff;"&gt;getdate&lt;/span&gt;(), &lt;span style="color: #800000; font-weight: bold;"&gt;102&lt;/span&gt;&lt;span style="color: #000000;"&gt; )&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;--&lt;/span&gt;&lt;span style="color: #008080;"&gt; 2009.07.30&lt;/span&gt;&lt;br/&gt;&lt;span style="color: #0000ff;"&gt;select&lt;/span&gt; &lt;span style="color: #ff00ff;"&gt;convert&lt;/span&gt;(&lt;span style="color: #0000ff;"&gt;varchar&lt;/span&gt;(&lt;span style="color: #800000; font-weight: bold;"&gt;12&lt;/span&gt;) , &lt;span style="color: #ff00ff;"&gt;getdate&lt;/span&gt;(), &lt;span style="color: #800000; font-weight: bold;"&gt;104&lt;/span&gt;&lt;span style="color: #000000;"&gt; )&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;--&lt;/span&gt;&lt;span style="color: #008080;"&gt; 30.07.2009&lt;/span&gt;&lt;br/&gt;&lt;span style="color: #0000ff;"&gt;select&lt;/span&gt; &lt;span style="color: #ff00ff;"&gt;convert&lt;/span&gt;(&lt;span style="color: #0000ff;"&gt;varchar&lt;/span&gt;(&lt;span style="color: #800000; font-weight: bold;"&gt;12&lt;/span&gt;) , &lt;span style="color: #ff00ff;"&gt;getdate&lt;/span&gt;(), &lt;span style="color: #800000; font-weight: bold;"&gt;111&lt;/span&gt;&lt;span style="color: #000000;"&gt; )&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;--&lt;/span&gt;&lt;span style="color: #008080;"&gt; 2009/07/30&lt;/span&gt;&lt;br/&gt;&lt;span style="color: #0000ff;"&gt;select&lt;/span&gt; &lt;span style="color: #ff00ff;"&gt;convert&lt;/span&gt;(&lt;span style="color: #0000ff;"&gt;varchar&lt;/span&gt;(&lt;span style="color: #800000; font-weight: bold;"&gt;12&lt;/span&gt;) , &lt;span style="color: #ff00ff;"&gt;getdate&lt;/span&gt;(), &lt;span style="color: #800000; font-weight: bold;"&gt;101&lt;/span&gt;&lt;span style="color: #000000;"&gt; )&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;--&lt;/span&gt;&lt;span style="color: #008080;"&gt; 07/30/2009&lt;/span&gt;&lt;br/&gt;&lt;span style="color: #0000ff;"&gt;select&lt;/span&gt; &lt;span style="color: #ff00ff;"&gt;convert&lt;/span&gt;(&lt;span style="color: #0000ff;"&gt;varchar&lt;/span&gt;(&lt;span style="color: #800000; font-weight: bold;"&gt;12&lt;/span&gt;) , &lt;span style="color: #ff00ff;"&gt;getdate&lt;/span&gt;(), &lt;span style="color: #800000; font-weight: bold;"&gt;103&lt;/span&gt;&lt;span style="color: #000000;"&gt; )&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;--&lt;/span&gt;&lt;span style="color: #008080;"&gt; 30/07/2009&lt;/span&gt;&lt;br/&gt;&lt;span style="color: #0000ff;"&gt;select&lt;/span&gt; &lt;span style="color: #ff00ff;"&gt;replace&lt;/span&gt;(&lt;span style="color: #ff00ff;"&gt;replace&lt;/span&gt;(&lt;span style="color: #ff00ff;"&gt;replace&lt;/span&gt;(&lt;span style="color: #ff00ff;"&gt;CONVERT&lt;/span&gt;(&lt;span style="color: #0000ff;"&gt;varchar&lt;/span&gt;, &lt;span style="color: #ff00ff;"&gt;getdate&lt;/span&gt;(), &lt;span style="color: #800000; font-weight: bold;"&gt;120&lt;/span&gt; ),&lt;span style="color: #ff0000;"&gt;'&lt;/span&gt;&lt;span style="color: #ff0000;"&gt;-&lt;/span&gt;&lt;span style="color: #ff0000;"&gt;'&lt;/span&gt;,&lt;span style="color: #ff0000;"&gt;''&lt;/span&gt;),&lt;span style="color: #ff0000;"&gt;'&lt;/span&gt;&lt;span style="color: #ff0000;"&gt;:&lt;/span&gt;&lt;span style="color: #ff0000;"&gt;'&lt;/span&gt;,&lt;span style="color: #ff0000;"&gt;''&lt;/span&gt;),&lt;span style="color: #ff0000;"&gt;'&lt;/span&gt; &lt;span style="color: #ff0000;"&gt;'&lt;/span&gt;,&lt;span style="color: #ff0000;"&gt;''&lt;/span&gt;&lt;span style="color: #000000;"&gt;)&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;--&lt;/span&gt;&lt;span style="color: #008080;"&gt; 20090730104422&lt;/span&gt;&lt;br/&gt;&lt;span style="color: #0000ff;"&gt;select&lt;/span&gt; &lt;span style="color: #ff00ff;"&gt;convert&lt;/span&gt;(&lt;span style="color: #0000ff;"&gt;varchar&lt;/span&gt;(&lt;span style="color: #800000; font-weight: bold;"&gt;12&lt;/span&gt;) , &lt;span style="color: #ff00ff;"&gt;getdate&lt;/span&gt;(), &lt;span style="color: #800000; font-weight: bold;"&gt;112&lt;/span&gt;&lt;span style="color: #000000;"&gt; )&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;--&lt;/span&gt;&lt;span style="color: #008080;"&gt; 20090730&lt;/span&gt;&lt;br/&gt;&lt;span style="color: #0000ff;"&gt;select&lt;/span&gt; &lt;span style="color: #ff00ff;"&gt;convert&lt;/span&gt;(&lt;span style="color: #0000ff;"&gt;varchar&lt;/span&gt;(&lt;span style="color: #800000; font-weight: bold;"&gt;12&lt;/span&gt;) , &lt;span style="color: #ff00ff;"&gt;getdate&lt;/span&gt;(), &lt;span style="color: #800000; font-weight: bold;"&gt;106&lt;/span&gt;&lt;span style="color: #000000;"&gt; )&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;--&lt;/span&gt;&lt;span style="color: #008080;"&gt; 30 07 2009&lt;/span&gt;&lt;br/&gt;&lt;span style="color: #0000ff;"&gt;select&lt;/span&gt; &lt;span style="color: #ff00ff;"&gt;convert&lt;/span&gt;(&lt;span style="color: #0000ff;"&gt;varchar&lt;/span&gt;(&lt;span style="color: #800000; font-weight: bold;"&gt;12&lt;/span&gt;) , &lt;span style="color: #ff00ff;"&gt;getdate&lt;/span&gt;(), &lt;span style="color: #800000; font-weight: bold;"&gt;107&lt;/span&gt;&lt;span style="color: #000000;"&gt; )&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;--&lt;/span&gt;&lt;span style="color: #008080;"&gt; 07 30, 2009&lt;/span&gt;&lt;br/&gt;&lt;br/&gt;&lt;span style="color: #008080;"&gt;--&lt;/span&gt;&lt;span style="color: #008080;"&gt; 只获取时间&lt;/span&gt;&lt;br/&gt;&lt;span style="color: #0000ff;"&gt;select&lt;/span&gt; &lt;span style="color: #ff00ff;"&gt;convert&lt;/span&gt;(&lt;span style="color: #0000ff;"&gt;varchar&lt;/span&gt;(&lt;span style="color: #800000; font-weight: bold;"&gt;12&lt;/span&gt;) , &lt;span style="color: #ff00ff;"&gt;getdate&lt;/span&gt;(), &lt;span style="color: #800000; font-weight: bold;"&gt;108&lt;/span&gt;&lt;span style="color: #000000;"&gt; )&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;--&lt;/span&gt;&lt;span style="color: #008080;"&gt; 10:56:41&lt;/span&gt;&lt;br/&gt;&lt;span style="color: #0000ff;"&gt;select&lt;/span&gt; &lt;span style="color: #ff00ff;"&gt;convert&lt;/span&gt;(&lt;span style="color: #0000ff;"&gt;varchar&lt;/span&gt;(&lt;span style="color: #800000; font-weight: bold;"&gt;12&lt;/span&gt;) , &lt;span style="color: #ff00ff;"&gt;getdate&lt;/span&gt;(), &lt;span style="color: #800000; font-weight: bold;"&gt;114&lt;/span&gt;&lt;span style="color: #000000;"&gt; )&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;--&lt;/span&gt;&lt;span style="color: #008080;"&gt; 10:57:58:873&lt;/span&gt;&lt;span style="color: #008080;"&gt;&lt;br/&gt;--&lt;/span&gt;&lt;span style="color: #008080;"&gt; 特殊写法:&lt;/span&gt;&lt;br/&gt;&lt;span style="color: #0000ff;"&gt;select&lt;/span&gt; &lt;span style="color: #ff00ff;"&gt;convert&lt;/span&gt;(&lt;span style="color: #0000ff;"&gt;varchar&lt;/span&gt;(&lt;span style="color: #800000; font-weight: bold;"&gt;12&lt;/span&gt;) , &lt;span style="color: #ff00ff;"&gt;getdate&lt;/span&gt;(), &lt;span style="color: #800000; font-weight: bold;"&gt;109&lt;/span&gt;&lt;span style="color: #000000;"&gt; )&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;--&lt;/span&gt;&lt;span style="color: #008080;"&gt; 07 30 2009 1&lt;/span&gt;&lt;br/&gt;&lt;span style="color: #0000ff;"&gt;select&lt;/span&gt; &lt;span style="color: #ff00ff;"&gt;convert&lt;/span&gt;(&lt;span style="color: #0000ff;"&gt;varchar&lt;/span&gt;(&lt;span style="color: #800000; font-weight: bold;"&gt;12&lt;/span&gt;) , &lt;span style="color: #ff00ff;"&gt;getdate&lt;/span&gt;(), &lt;span style="color: #800000; font-weight: bold;"&gt;113&lt;/span&gt;&lt;span style="color: #000000;"&gt; )&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;--&lt;/span&gt;&lt;span style="color: #008080;"&gt; 30 07 2009 1&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;img src="http://www.cnblogs.com/refactor/aggbug/2526135.html?type=0" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/refactor/archive/2012/05/30/2526135.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/fatlyz/archive/2012/05/30/2526133.html</id><title type="text">解决MAC系统字体发虚，更换默认字体为微软雅黑</title><summary type="text"/><published>2012-05-30T05:27:00Z</published><updated>2012-05-30T05:27:00Z</updated><author><name>FatLYZ</name><uri>http://www.cnblogs.com/fatlyz/</uri></author><link rel="alternate" href="http://www.cnblogs.com/fatlyz/archive/2012/05/30/2526133.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/fatlyz/archive/2012/05/30/2526133.html"/><content type="html">&lt;p&gt;&lt;span&gt;Finder 中按 Command+Shift+G ：&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span&gt;/System/Library/Frameworks/ApplicationServices.framework/Frameworks/&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span&gt;CoreText.framework/Resources/&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span&gt;2、打开 DefaultFontFallbacks.plist 文件&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span&gt;3、默认的简体中文字体是 STHeitiSC-Light，将 STHeitiSC-Light 全部替换为 微软雅黑 。&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span&gt;4、把以下代码 复制到终端里面去，更改一下字体平滑。&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span&gt;defaults -currentHost write -globalDomain AppleFontSmoothing -int 2&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span&gt;5、注销后生效。&lt;/span&gt;&lt;/p&gt;&lt;img src="http://www.cnblogs.com/fatlyz/aggbug/2526133.html?type=0" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/fatlyz/archive/2012/05/30/2526133.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/meteoric_cry/archive/2012/05/30/2526132.html</id><title type="text">记一次郁闷的更新</title><summary type="text"/><published>2012-05-30T05:25:00Z</published><updated>2012-05-30T05:25:00Z</updated><author><name>meteoric_cry</name><uri>http://www.cnblogs.com/meteoric_cry/</uri></author><link rel="alternate" href="http://www.cnblogs.com/meteoric_cry/archive/2012/05/30/2526132.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/meteoric_cry/archive/2012/05/30/2526132.html"/><content type="html">&lt;p&gt;&amp;#160; 开发的游戏，使用双线，但每次更新都会有玩家反馈说无法进入游戏了。很不幸，上周日更新的时候又遇到了问题了，然后开始排查问题…&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;首先收集玩家的信息，地址位置，网络情况（一般玩家不知道如何处理）&lt;/p&gt;  &lt;p&gt;1、分析出现问题的特征，依据：玩家所在的地理位置，国内还是国外的哪个城市；&lt;/p&gt;  &lt;p&gt;2、让玩家访问&lt;a href="http://www.baidu.com/s?wd=ip" target="_blank"&gt;http://www.baidu.com/s?wd=ip&lt;/a&gt; 然后截图，分析玩家的网络线路&lt;/p&gt;  &lt;p&gt;3、联系玩家，请求可以连接远程桌面，然后cmd –&amp;gt; ping 、nslookup…&lt;/p&gt;  &lt;p&gt;使用chrome浏览器的开发者工具(F12)，刷新游戏页面，然后查看加载资源的情况。&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;最终发现的问题，该玩家请求资源返回的IP地址为海外“以色列”，而且请求的资源，主文件近2M，而实际请求到的资源为180几K，然后复制地址，修改后面的参数，发现不带参数时可以正确请求资源---但资源是过期的，不是最新的。&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;最后找运维那边的帮助协助查看，定位是网宿的CDN出了问题，至于玩家身在上海，为何请求会转向海外，暂时原因不太清楚，而海外的CDN在请求指定资源xxx.swf?版本号时会发生问题，最终从网宿那边确认的原因是因为请求资源的url地址上带有数字62或者64，请求被拦截了，而至于还有没有其它“敏感”数字，暂时还不太清楚。这绝对是个杯具…&lt;/p&gt;&lt;img src="http://www.cnblogs.com/meteoric_cry/aggbug/2526132.html?type=0" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/meteoric_cry/archive/2012/05/30/2526132.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/ljgstudy/archive/2012/05/30/2526131.html</id><title type="text">SQL Server2008学习笔记（四）--数据表的基本操作(上)</title><summary type="text"/><published>2012-05-30T05:24:00Z</published><updated>2012-05-30T05:24:00Z</updated><author><name>programming lover</name><uri>http://www.cnblogs.com/ljgstudy/</uri></author><link rel="alternate" href="http://www.cnblogs.com/ljgstudy/archive/2012/05/30/2526131.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/ljgstudy/archive/2012/05/30/2526131.html"/><content type="html">&lt;p&gt;&lt;span style="font-family: courier new, courier; color: #ff0000; font-size: 16px;"&gt;&lt;strong&gt;一、概述&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: courier new,courier;"&gt;表是SQL Server数据库中最重要，最基本的数据库对象，数据库中的所有数据都存放在表中。在数据数据库中，表是按照行和列的表格结构存储数据的。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: courier new,courier;"&gt;在SQL Server数据库中表有一下几个特点：&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;span style="font-family: courier new,courier;"&gt;1、表通常代表一个实体&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;span style="font-family: courier new,courier;"&gt;2、表是由行和列组成&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;span style="font-family: courier new,courier;"&gt;3、行值在同一个表中具有唯一性&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;span style="font-family: courier new,courier;"&gt;4、列名在用一个表中具有唯一性&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;span style="font-family: courier new,courier;"&gt;5、行和列的无序性&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: courier new, courier; color: #ff0000; font-size: 16px;"&gt;&lt;strong&gt;二、数据表的操作&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;span style="font-family: courier new,courier;"&gt;1、创建一个基本的数据表（且设置主键）&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;"&gt;&lt;span style="font-family: courier new,courier;"&gt;&lt;span style="color: #008080;"&gt; 1&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;use&lt;/span&gt;&lt;span style="color: #000000;"&gt; 学生成绩管理系统&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 2&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;create&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;table&lt;/span&gt;&lt;span style="color: #000000;"&gt; 学生信息&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 3&lt;/span&gt; &lt;span style="color: #000000;"&gt;(&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 4&lt;/span&gt; 学号 &lt;span style="color: #0000ff;"&gt;nvarchar&lt;/span&gt;(&lt;span style="color: #800000; font-weight: bold;"&gt;50&lt;/span&gt;) &lt;span style="color: #808080;"&gt;not&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;primary&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;key&lt;/span&gt;&lt;span style="color: #000000;"&gt;,&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 5&lt;/span&gt; 姓名 &lt;span style="color: #0000ff;"&gt;nchar&lt;/span&gt;(&lt;span style="color: #800000; font-weight: bold;"&gt;10&lt;/span&gt;) &lt;span style="color: #808080;"&gt;not&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;&lt;span style="color: #000000;"&gt;,&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 6&lt;/span&gt; 性别 &lt;span style="color: #0000ff;"&gt;nchar&lt;/span&gt;(&lt;span style="color: #800000; font-weight: bold;"&gt;10&lt;/span&gt;) &lt;span style="color: #808080;"&gt;not&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;&lt;span style="color: #000000;"&gt;,&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 7&lt;/span&gt; 出生日期 date &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;&lt;span style="color: #000000;"&gt;,&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 8&lt;/span&gt; 民族 &lt;span style="color: #0000ff;"&gt;nchar&lt;/span&gt;(&lt;span style="color: #800000; font-weight: bold;"&gt;10&lt;/span&gt;) &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;&lt;span style="color: #000000;"&gt;,&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 9&lt;/span&gt; 所属班级 &lt;span style="color: #0000ff;"&gt;nchar&lt;/span&gt;(&lt;span style="color: #800000; font-weight: bold;"&gt;10&lt;/span&gt;) &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;&lt;span style="color: #000000;"&gt;,&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;10&lt;/span&gt; 班级地址 &lt;span style="color: #0000ff;"&gt;ntext&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;&lt;br/&gt;&lt;span style="color: #008080;"&gt;11&lt;/span&gt; )&lt;/span&gt;&lt;/div&gt;&lt;p&gt;&lt;strong&gt;&lt;span style="font-family: courier new,courier;"&gt;2、创建外键&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;"&gt;&lt;span style="font-family: courier new,courier;"&gt;&lt;span style="color: #008080;"&gt; 1&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;use&lt;/span&gt;&lt;span style="color: #000000;"&gt; 学生信息管理系统&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 2&lt;/span&gt; ceate &lt;span style="color: #0000ff;"&gt;table&lt;/span&gt;&lt;span style="color: #000000;"&gt; 班级信息&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 3&lt;/span&gt; &lt;span style="color: #000000;"&gt;(&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 4&lt;/span&gt; 班级编号 &lt;span style="color: #0000ff;"&gt;nchar&lt;/span&gt;(&lt;span style="color: #800000; font-weight: bold;"&gt;10&lt;/span&gt;) &lt;span style="color: #808080;"&gt;not&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;primary&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;key&lt;/span&gt;&lt;span style="color: #000000;"&gt;,&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 5&lt;/span&gt; 班级名 &lt;span style="color: #0000ff;"&gt;nchar&lt;/span&gt;(&lt;span style="color: #800000; font-weight: bold;"&gt;10&lt;/span&gt;&lt;span style="color: #000000;"&gt;),&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 6&lt;/span&gt; 班级人数 &lt;span style="color: #0000ff;"&gt;int&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;&lt;span style="color: #000000;"&gt;,&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 7&lt;/span&gt; 所属系别 &lt;span style="color: #0000ff;"&gt;nchar&lt;/span&gt;(&lt;span style="color: #800000; font-weight: bold;"&gt;10&lt;/span&gt;) &lt;span style="color: #808080;"&gt;not&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;&lt;span style="color: #000000;"&gt;,&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 8&lt;/span&gt; 辅导员 &lt;span style="color: #0000ff;"&gt;nchar&lt;/span&gt;(&lt;span style="color: #800000; font-weight: bold;"&gt;10&lt;/span&gt;) &lt;span style="color: #808080;"&gt;not&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;&lt;span style="color: #000000;"&gt;,&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 9&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;foreign&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;key&lt;/span&gt; 所属系别 &lt;span style="color: #0000ff;"&gt;references&lt;/span&gt;&lt;span style="color: #000000;"&gt; 系别信息(系别编号),&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;10&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;foreign&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;key&lt;/span&gt; 辅导员 &lt;span style="color: #0000ff;"&gt;references&lt;/span&gt;&lt;span style="color: #000000;"&gt; 辅导员信息(辅导员信息)&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;11&lt;/span&gt; )&lt;/span&gt;&lt;/div&gt;&lt;p&gt;&lt;strong&gt;&lt;span style="font-family: courier new,courier;"&gt;3、创建非空列&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;"&gt;&lt;span style="font-family: courier new,courier;"&gt;&lt;span style="color: #008080;"&gt; 1&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;use&lt;/span&gt;&lt;span style="color: #000000;"&gt; 学生信息管理系统&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 2&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;create&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;table&lt;/span&gt;&lt;span style="color: #000000;"&gt; 辅导员信息&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 3&lt;/span&gt; &lt;span style="color: #000000;"&gt;(&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 4&lt;/span&gt; 辅导员编号 &lt;span style="color: #0000ff;"&gt;nchar&lt;/span&gt;(&lt;span style="color: #800000; font-weight: bold;"&gt;10&lt;/span&gt;) &lt;span style="color: #808080;"&gt;not&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;primary&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;key&lt;/span&gt;&lt;span style="color: #000000;"&gt;,&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 5&lt;/span&gt; 姓名 &lt;span style="color: #0000ff;"&gt;nchar&lt;/span&gt;(&lt;span style="color: #800000; font-weight: bold;"&gt;10&lt;/span&gt;) &lt;span style="color: #808080;"&gt;not&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;&lt;span style="color: #000000;"&gt;,&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 6&lt;/span&gt; 性别 &lt;span style="color: #0000ff;"&gt;nchar&lt;/span&gt;(&lt;span style="color: #800000; font-weight: bold;"&gt;10&lt;/span&gt;) &lt;span style="color: #808080;"&gt;not&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;&lt;span style="color: #000000;"&gt;,&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 7&lt;/span&gt; 年龄 &lt;span style="color: #0000ff;"&gt;int&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;&lt;span style="color: #000000;"&gt;,&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 8&lt;/span&gt; 民族 &lt;span style="color: #0000ff;"&gt;nchar&lt;/span&gt;(&lt;span style="color: #800000; font-weight: bold;"&gt;10&lt;/span&gt;) &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;&lt;span style="color: #000000;"&gt;,&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 9&lt;/span&gt; 籍贯 &lt;span style="color: #0000ff;"&gt;nchar&lt;/span&gt;(&lt;span style="color: #800000; font-weight: bold;"&gt;10&lt;/span&gt;) &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;&lt;span style="color: #000000;"&gt;,&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;10&lt;/span&gt; 联系电话 &lt;span style="color: #0000ff;"&gt;nvarchar&lt;/span&gt;(&lt;span style="color: #800000; font-weight: bold;"&gt;50&lt;/span&gt;) &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;&lt;br/&gt;&lt;span style="color: #008080;"&gt;11&lt;/span&gt; )&lt;/span&gt;&lt;/div&gt;&lt;p&gt;&lt;strong&gt;&lt;span style="font-family: courier new,courier;"&gt;4、创建默认值定义&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;"&gt;&lt;span style="font-family: courier new,courier;"&gt;&lt;span style="color: #008080;"&gt; 1&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;use&lt;/span&gt;&lt;span style="color: #000000;"&gt; 学生信息管理系统&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 2&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;create&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;table&lt;/span&gt;&lt;span style="color: #000000;"&gt; 成绩信息&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 3&lt;/span&gt; &lt;span style="color: #000000;"&gt;(&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 4&lt;/span&gt; 成绩编号 &lt;span style="color: #0000ff;"&gt;int&lt;/span&gt; &lt;span style="color: #808080;"&gt;not&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;primary&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;key&lt;/span&gt;&lt;span style="color: #000000;"&gt;,&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 5&lt;/span&gt; 考生编号 &lt;span style="color: #0000ff;"&gt;nvarchar&lt;/span&gt;(&lt;span style="color: #800000; font-weight: bold;"&gt;50&lt;/span&gt;) &lt;span style="color: #808080;"&gt;not&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;&lt;span style="color: #000000;"&gt;,&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 6&lt;/span&gt; 考试编号 &lt;span style="color: #0000ff;"&gt;nchar&lt;/span&gt;(&lt;span style="color: #800000; font-weight: bold;"&gt;10&lt;/span&gt;) &lt;span style="color: #808080;"&gt;not&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;&lt;span style="color: #000000;"&gt;,&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 7&lt;/span&gt; 课程编号 &lt;span style="color: #0000ff;"&gt;nchar&lt;/span&gt;(&lt;span style="color: #800000; font-weight: bold;"&gt;10&lt;/span&gt;) &lt;span style="color: #808080;"&gt;not&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;&lt;span style="color: #000000;"&gt;,&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 8&lt;/span&gt; 分数 &lt;span style="color: #0000ff;"&gt;int&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;default&lt;/span&gt;(&lt;span style="color: #800000; font-weight: bold;"&gt;0&lt;/span&gt;&lt;span style="color: #000000;"&gt;),&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 9&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;foreign&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;key&lt;/span&gt; 学生编号 &lt;span style="color: #0000ff;"&gt;references&lt;/span&gt;&lt;span style="color: #000000;"&gt; 学生信息(学号),&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;10&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;foreign&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;key&lt;/span&gt;&lt;span style="color: #000000;"&gt; 考试编号 references考试信息(考试编号),&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;11&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;foreign&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;key&lt;/span&gt; 课程编号 &lt;span style="color: #0000ff;"&gt;references&lt;/span&gt;&lt;span style="color: #000000;"&gt; 课程信息(课程编号)&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;12&lt;/span&gt; )&lt;/span&gt;&lt;/div&gt;&lt;p&gt;&lt;strong&gt;&lt;span style="font-family: courier new,courier;"&gt;5、创建check约束列&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;"&gt;&lt;span style="font-family: courier new,courier;"&gt;&lt;span style="color: #008080;"&gt; 1&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;use&lt;/span&gt;&lt;span style="color: #000000;"&gt; 学生成绩管理系统&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 2&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;create&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;table&lt;/span&gt;&lt;span style="color: #000000;"&gt; 教师信息&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 3&lt;/span&gt; &lt;span style="color: #000000;"&gt;(&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 4&lt;/span&gt; 教师编号 &lt;span style="color: #0000ff;"&gt;nchar&lt;/span&gt;(&lt;span style="color: #800000; font-weight: bold;"&gt;10&lt;/span&gt;) &lt;span style="color: #808080;"&gt;not&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;primary&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;key&lt;/span&gt;&lt;span style="color: #000000;"&gt;,&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 5&lt;/span&gt; 姓名 &lt;span style="color: #0000ff;"&gt;nchar&lt;/span&gt;(&lt;span style="color: #800000; font-weight: bold;"&gt;10&lt;/span&gt;) &lt;span style="color: #808080;"&gt;not&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;&lt;span style="color: #000000;"&gt;,&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 6&lt;/span&gt; 性别 &lt;span style="color: #0000ff;"&gt;nchar&lt;/span&gt;(&lt;span style="color: #800000; font-weight: bold;"&gt;10&lt;/span&gt;) &lt;span style="color: #808080;"&gt;not&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;check&lt;/span&gt;(性别 &lt;span style="color: #808080;"&gt;in&lt;/span&gt; (&lt;span style="color: #ff0000;"&gt;'&lt;/span&gt;&lt;span style="color: #ff0000;"&gt;男&lt;/span&gt;&lt;span style="color: #ff0000;"&gt;'&lt;/span&gt;,&lt;span style="color: #ff0000;"&gt;'&lt;/span&gt;&lt;span style="color: #ff0000;"&gt;女&lt;/span&gt;&lt;span style="color: #ff0000;"&gt;'&lt;/span&gt;&lt;span style="color: #000000;"&gt;)),&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 7&lt;/span&gt; 年龄 &lt;span style="color: #0000ff;"&gt;int&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;&lt;span style="color: #000000;"&gt;,&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 8&lt;/span&gt; 民族 &lt;span style="color: #0000ff;"&gt;nchar&lt;/span&gt;(&lt;span style="color: #800000; font-weight: bold;"&gt;10&lt;/span&gt;) &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;&lt;span style="color: #000000;"&gt;,&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 9&lt;/span&gt; 籍贯 &lt;span style="color: #0000ff;"&gt;ntext&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;&lt;span style="color: #000000;"&gt;,&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;10&lt;/span&gt; 联系电话 &lt;span style="color: #0000ff;"&gt;nvarchar&lt;/span&gt;(&lt;span style="color: #800000; font-weight: bold;"&gt;50&lt;/span&gt;) &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;&lt;br/&gt;&lt;span style="color: #008080;"&gt;11&lt;/span&gt; )&lt;/span&gt;&lt;/div&gt;&lt;p&gt;&lt;strong&gt;&lt;span style="font-family: courier new,courier;"&gt;&amp;nbsp;6、创建自动编号列&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;"&gt;&lt;span style="font-family: courier new,courier;"&gt;&lt;span style="color: #008080;"&gt;1&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;use&lt;/span&gt;&lt;span style="color: #000000;"&gt; 学生成绩管理系统&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;2&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;create&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;table&lt;/span&gt;&lt;span style="color: #000000;"&gt; 系别信息&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;3&lt;/span&gt; &lt;span style="color: #000000;"&gt;(&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;4&lt;/span&gt; 系别信息 ncahr(&lt;span style="color: #800000; font-weight: bold;"&gt;10&lt;/span&gt;) &lt;span style="color: #ff00ff;"&gt;identity&lt;/span&gt;(&lt;span style="color: #800000; font-weight: bold;"&gt;0&lt;/span&gt;,&lt;span style="color: #800000; font-weight: bold;"&gt;1&lt;/span&gt;) &lt;span style="color: #0000ff;"&gt;primary&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;key&lt;/span&gt; &lt;span style="color: #808080;"&gt;not&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;&lt;span style="color: #000000;"&gt;,&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;5&lt;/span&gt; 系别名称 &lt;span style="color: #0000ff;"&gt;nvarchar&lt;/span&gt;(&lt;span style="color: #800000; font-weight: bold;"&gt;50&lt;/span&gt;) &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;&lt;br/&gt;&lt;span style="color: #008080;"&gt;6&lt;/span&gt; )&lt;/span&gt;&lt;/div&gt;&lt;p&gt;&lt;strong&gt;&lt;span style="font-family: courier new,courier;"&gt;7、创建唯一列&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;"&gt;&lt;span style="font-family: courier new,courier;"&gt;&lt;span style="color: #008080;"&gt; 1&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;use&lt;/span&gt;&lt;span style="color: #000000;"&gt; 学生成绩管理系统&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 2&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;create&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;table&lt;/span&gt;&lt;span style="color: #000000;"&gt; 辅导员信息&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 3&lt;/span&gt; &lt;span style="color: #000000;"&gt;(&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 4&lt;/span&gt; 辅导员编号 &lt;span style="color: #0000ff;"&gt;nchar&lt;/span&gt;(&lt;span style="color: #800000; font-weight: bold;"&gt;10&lt;/span&gt;) &lt;span style="color: #808080;"&gt;not&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;primary&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;key&lt;/span&gt;&lt;span style="color: #000000;"&gt;,&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 5&lt;/span&gt; 姓名 &lt;span style="color: #0000ff;"&gt;nchar&lt;/span&gt;(&lt;span style="color: #800000; font-weight: bold;"&gt;10&lt;/span&gt;) &lt;span style="color: #808080;"&gt;not&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;unique&lt;/span&gt;&lt;span style="color: #000000;"&gt;,&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 6&lt;/span&gt; 性别 &lt;span style="color: #0000ff;"&gt;int&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;&lt;span style="color: #000000;"&gt;,&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 7&lt;/span&gt; 民族 &lt;span style="color: #0000ff;"&gt;nchar&lt;/span&gt;(&lt;span style="color: #800000; font-weight: bold;"&gt;10&lt;/span&gt;) &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;&lt;span style="color: #000000;"&gt;,&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 8&lt;/span&gt; 籍贯 &lt;span style="color: #0000ff;"&gt;nchar&lt;/span&gt;(&lt;span style="color: #800000; font-weight: bold;"&gt;10&lt;/span&gt;) &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;&lt;span style="color: #000000;"&gt;,&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt; 9&lt;/span&gt; 联系电话 &lt;span style="color: #0000ff;"&gt;nvarchar&lt;/span&gt;(&lt;span style="color: #800000; font-weight: bold;"&gt;50&lt;/span&gt;) &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;unique&lt;/span&gt;&lt;br/&gt;&lt;span style="color: #008080;"&gt;10&lt;/span&gt; )&lt;/span&gt;&lt;/div&gt;&lt;p&gt;&lt;strong&gt;&lt;span style="font-family: courier new,courier;"&gt;8、删除数据表&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;"&gt;&lt;span style="font-family: courier new,courier;"&gt;&lt;span style="color: #008080;"&gt;1&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;use&lt;/span&gt;&lt;span style="color: #000000;"&gt; 学生成绩管理系统&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;2&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;go&lt;/span&gt;&lt;br/&gt;&lt;span style="color: #008080;"&gt;3&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;drop&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;table&lt;/span&gt; 学生信息&lt;/span&gt;&lt;/div&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;"&gt;&lt;span style="font-family: courier new,courier;"&gt;&lt;span style="color: #008080;"&gt;1&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;use&lt;/span&gt;&lt;span style="color: #000000;"&gt; 学生成绩管理系统&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;2&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;go&lt;/span&gt;&lt;br/&gt;&lt;span style="color: #008080;"&gt;3&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;delete&lt;/span&gt; 学生信息&lt;/span&gt;&lt;/div&gt;&lt;p&gt;&lt;span style="font-family: courier new, courier; color: #ff0000;"&gt;注意：使用drop table语句删除的是表本身，即将表和表中的数据全部删除。如果只是删除表中的数据，而保留表本身，那么就使用delete table语句。&lt;/span&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="font-family: courier new,courier;"&gt;9、修改表的属性&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;"&gt;&lt;span style="font-family: courier new,courier;"&gt;&lt;span style="color: #008080;"&gt;1&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;use&lt;/span&gt;&lt;span style="color: #000000;"&gt; 学生成绩管理系统&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;2&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;alter&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;table&lt;/span&gt;&lt;span style="color: #000000;"&gt; 学生信息&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;3&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;alter&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;column&lt;/span&gt; 姓名 &lt;span style="color: #0000ff;"&gt;nvarchar&lt;/span&gt;(&lt;span style="color: #800000; font-weight: bold;"&gt;20&lt;/span&gt;) &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;p&gt;&lt;strong&gt;&lt;span style="font-family: courier new,courier;"&gt;10、添加删除表列&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;"&gt;&lt;span style="font-family: courier new,courier;"&gt;&lt;span style="color: #008080;"&gt;1&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;use&lt;/span&gt;&lt;span style="color: #000000;"&gt; 学生成绩管理系统&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;2&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;go&lt;/span&gt;&lt;br/&gt;&lt;span style="color: #008080;"&gt;3&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;alter&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;table&lt;/span&gt;&lt;span style="color: #000000;"&gt; 课程信息&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;4&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;add&lt;/span&gt; 上课时间 &lt;span style="color: #0000ff;"&gt;datetime&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;"&gt;&lt;span style="font-family: courier new,courier;"&gt;&lt;span style="color: #008080;"&gt;1&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;use&lt;/span&gt;&lt;span style="color: #000000;"&gt; 学生成绩管理系统&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;2&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;go&lt;/span&gt;&lt;br/&gt;&lt;span style="color: #008080;"&gt;3&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;alter&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;table&lt;/span&gt;&lt;span style="color: #000000;"&gt; 课程信息&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;4&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;drop&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;column&lt;/span&gt; 是否必修 &lt;span style="color: #0000ff;"&gt;cascade&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: courier new,courier;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&lt;img src="http://www.cnblogs.com/ljgstudy/aggbug/2526131.html?type=0" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/ljgstudy/archive/2012/05/30/2526131.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/lsfv/archive/2012/05/30/2526126.html</id><title type="text">水晶报表 相关。</title><summary type="text"/><published>2012-05-30T05:22:00Z</published><updated>2012-05-30T05:22:00Z</updated><author><name>琴鸟</name><uri>http://www.cnblogs.com/lsfv/</uri></author><link rel="alternate" href="http://www.cnblogs.com/lsfv/archive/2012/05/30/2526126.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/lsfv/archive/2012/05/30/2526126.html"/><content type="html">&lt;p&gt;1.板块的节点选择。&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 每页必须的元素还是要放到page 相关的节点中去。&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 不同的分组需要分页，最好放到分组头部。new page before。 忘记了为什么，呵呵，放到分组的footer，为什么不好呢。忘记了。&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;2.在vb中，设置 odbc，那么只要用代码控制数据源。就可以了。 &lt;br /&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;3.basic 的共享语法是 &lt;/p&gt;&lt;p&gt;比如一个累加内部分的某些数据组放到此内部分组之外。&lt;br /&gt;&lt;br /&gt;放置 头部，清空变量&lt;br /&gt;&lt;/p&gt;&lt;div&gt;Shared strpu2 as string&lt;br /&gt;strpu2=""&lt;br /&gt;&lt;br /&gt;Shared strpu3 as string&lt;br /&gt;strpu3=""&lt;br /&gt;formula=""&lt;/div&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;2.放置内部分组节点1。临时储存数据（上次的总和）&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;div&gt;shared strpu2 as string&lt;br /&gt;shared strpu3 as string&lt;br /&gt;strpu2=strpu3&lt;br /&gt;formula=strpu3&lt;/div&gt;&amp;nbsp;&lt;p&gt;&amp;nbsp;&lt;/p&gt;3.放置内部分组节点2.得到临时数据，并加上现在数据。&lt;br /&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;div&gt;Shared strpu2 as string&lt;br /&gt;Shared strpu3 as string&lt;br /&gt;if strpu2 &amp;lt;&amp;gt;"" then&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; strpu3=strpu2 &amp;amp;"&amp;nbsp; ;&amp;nbsp; "&amp;amp; {@strpu}&lt;br /&gt;else&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; strpu3={@strpu}&lt;br /&gt;end if&lt;br /&gt;formula=strpu2 &amp;amp;"&amp;nbsp; ;&amp;nbsp; "&amp;amp; {@strpu}&lt;/div&gt;&amp;nbsp;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;img src="http://www.cnblogs.com/lsfv/aggbug/2526126.html?type=0" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/lsfv/archive/2012/05/30/2526126.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/andrew-blog/archive/2012/05/30/2526127.html</id><title type="text">在C#中的一个类型定义，可能包含的所有成员</title><summary type="text"/><published>2012-05-30T05:22:00Z</published><updated>2012-05-30T05:22:00Z</updated><author><name>Andrew.Wangxu</name><uri>http://www.cnblogs.com/andrew-blog/</uri></author><link rel="alternate" href="http://www.cnblogs.com/andrew-blog/archive/2012/05/30/2526127.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/andrew-blog/archive/2012/05/30/2526127.html"/><content type="html">&lt;p&gt;以下代码展示了一个类型定义，其中包含了所有可能的成员。这段代码会通过编译（会显示一些警告），但它并不能代表你平常创建的类型，其中大多数方法没有实用价值。这里仅仅是为了列举出来而已，有遗漏的话 希望园友们提示一下，我会追加上。。&lt;/p&gt;&lt;p&gt;谢谢了。。&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;"&gt;&lt;span style="color: #0000ff;"&gt;using&lt;/span&gt;&lt;span style="color: #000000;"&gt; System;&lt;br/&gt;&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;public&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;sealed&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;class&lt;/span&gt; SomeType                            &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;1&lt;/span&gt;&lt;br/&gt;&lt;span style="color: #000000;"&gt;{&lt;br/&gt;    &lt;/span&gt;&lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;嵌套类&lt;/span&gt;&lt;br/&gt;    &lt;span style="color: #0000ff;"&gt;private&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;class&lt;/span&gt; SomeNestdType { }                     &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;2&lt;br/&gt;&lt;br/&gt;    &lt;/span&gt;&lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;常量、只读字段和静态可读/可写字段&lt;/span&gt;&lt;br/&gt;    &lt;span style="color: #0000ff;"&gt;private&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;const&lt;/span&gt; Int32 SomeConstant = &lt;span style="color: #800080;"&gt;1&lt;/span&gt;;               &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;3&lt;/span&gt;&lt;br/&gt;    &lt;span style="color: #0000ff;"&gt;private&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;readonly&lt;/span&gt; Int32 SomeReadOnlyField = &lt;span style="color: #800080;"&gt;2&lt;/span&gt;;       &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;4&lt;/span&gt;&lt;br/&gt;    &lt;span style="color: #0000ff;"&gt;private&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;static&lt;/span&gt; Int32 SomeReadWriteField = &lt;span style="color: #800080;"&gt;3&lt;/span&gt;;        &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;5&lt;br/&gt;&lt;br/&gt;    &lt;/span&gt;&lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;类型构造器&lt;/span&gt;&lt;br/&gt;    &lt;span style="color: #0000ff;"&gt;static&lt;/span&gt; SomeType() { }                               &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;6&lt;br/&gt;&lt;br/&gt;    &lt;/span&gt;&lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;实例构造器&lt;/span&gt;&lt;br/&gt;    &lt;span style="color: #0000ff;"&gt;public&lt;/span&gt; SomeType(Int32 x) { }                        &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;7&lt;/span&gt;&lt;br/&gt;    &lt;span style="color: #0000ff;"&gt;public&lt;/span&gt; SomeType() { }                               &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;8&lt;br/&gt;&lt;br/&gt;    &lt;/span&gt;&lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;实例方法和静态方法&lt;/span&gt;&lt;br/&gt;    &lt;span style="color: #0000ff;"&gt;private&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;string&lt;/span&gt; InstanceMethod() { &lt;span style="color: #0000ff;"&gt;return&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;null&lt;/span&gt;; }    &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;9&lt;/span&gt;&lt;br/&gt;    &lt;span style="color: #0000ff;"&gt;public&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;static&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;void&lt;/span&gt; Main() { }                       &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;10&lt;br/&gt;&lt;br/&gt;    &lt;/span&gt;&lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;实例属性&lt;/span&gt;&lt;br/&gt;    &lt;span style="color: #0000ff;"&gt;public&lt;/span&gt; Int32 SomeProp                               &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;11&lt;/span&gt;&lt;br/&gt;&lt;span style="color: #000000;"&gt;    {&lt;br/&gt;        &lt;/span&gt;&lt;span style="color: #0000ff;"&gt;get&lt;/span&gt; { &lt;span style="color: #0000ff;"&gt;return&lt;/span&gt; &lt;span style="color: #800080;"&gt;0&lt;/span&gt;; }                               &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;12&lt;/span&gt;&lt;br/&gt;        &lt;span style="color: #0000ff;"&gt;set&lt;/span&gt; { }                                         &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;13&lt;/span&gt;&lt;br/&gt;&lt;span style="color: #000000;"&gt;    }&lt;br/&gt;&lt;br/&gt;    &lt;/span&gt;&lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;实例有参属性(索引器)&lt;/span&gt;&lt;br/&gt;    &lt;span style="color: #0000ff;"&gt;public&lt;/span&gt; Int32 &lt;span style="color: #0000ff;"&gt;this&lt;/span&gt;[&lt;span style="color: #0000ff;"&gt;string&lt;/span&gt; s]                         &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;14&lt;/span&gt;&lt;br/&gt;&lt;span style="color: #000000;"&gt;    {&lt;br/&gt;        &lt;/span&gt;&lt;span style="color: #0000ff;"&gt;get&lt;/span&gt; { &lt;span style="color: #0000ff;"&gt;return&lt;/span&gt; &lt;span style="color: #800080;"&gt;0&lt;/span&gt;; }                               &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;15&lt;/span&gt;&lt;br/&gt;        &lt;span style="color: #0000ff;"&gt;set&lt;/span&gt; { }                                         &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;16&lt;/span&gt;&lt;br/&gt;&lt;span style="color: #000000;"&gt;    }&lt;br/&gt;&lt;br/&gt;    &lt;/span&gt;&lt;span style="color: #0000ff;"&gt;public&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;event&lt;/span&gt; EventHandler SomeEvent;                &lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;17&lt;/span&gt;&lt;br/&gt;}&lt;/div&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;img src="http://www.cnblogs.com/andrew-blog/aggbug/2526127.html?type=0" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/andrew-blog/archive/2012/05/30/2526127.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/warioland/archive/2012/05/30/2526128.html</id><title type="text">如何用distinct消除重复记录的同时又能选取多个字段值？</title><summary type="text"/><published>2012-05-30T05:22:00Z</published><updated>2012-05-30T05:22:00Z</updated><author><name>瓦里奥</name><uri>http://www.cnblogs.com/warioland/</uri></author><link rel="alternate" href="http://www.cnblogs.com/warioland/archive/2012/05/30/2526128.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/warioland/archive/2012/05/30/2526128.html"/><content type="html">&lt;p&gt;&lt;/p&gt;  &lt;p&gt;如何用distinct消除重复记录的同时又能选取多个字段值？&lt;/p&gt;  &lt;p&gt;需求是：我要消除name字段值重复的记录，同时又要得到id字段的值，其中id是自增字段。   &lt;br /&gt;select distinct name from t1 能消除重复记录，但只能取一个字段，现在要同时取id,name这2个字段的值。     &lt;br /&gt;select distinct id,name from t1 可以取多个字段，但只能消除这2个字段值全部相同的记录     &lt;br /&gt;最后解决方法：    &lt;br /&gt;SELECT &lt;em&gt;id&lt;/em&gt;,name FROM t1 WHERE id IN(SELECT MAX(id) FROM t1 GROUP BY name) order by &lt;em&gt;id&lt;/em&gt; desc&lt;/p&gt;  &lt;p&gt;注意开头的 &lt;em&gt;id&lt;/em&gt; 的 一定要，后面的order by 里有的字段一定要加进select 结果，要不然排序无效&lt;/p&gt;&lt;img src="http://www.cnblogs.com/warioland/aggbug/2526128.html?type=0" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/warioland/archive/2012/05/30/2526128.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/juddhu/archive/2012/05/30/2526125.html</id><title type="text">jquery easyui tree 递归树</title><summary type="text"/><published>2012-05-30T05:21:00Z</published><updated>2012-05-30T05:21:00Z</updated><author><name>hcy&amp;#39;s workbench</name><uri>http://www.cnblogs.com/juddhu/</uri></author><link rel="alternate" href="http://www.cnblogs.com/juddhu/archive/2012/05/30/2526125.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/juddhu/archive/2012/05/30/2526125.html"/><content type="html">&lt;p&gt;地址：&lt;a href="http://www.cnblogs.com/jinqi79731/archive/2012/02/09/2344104.html"&gt;http://www.cnblogs.com/jinqi79731/archive/2012/02/09/2344104.html&lt;/a&gt;&lt;/p&gt;&lt;img src="http://www.cnblogs.com/juddhu/aggbug/2526125.html?type=0" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/juddhu/archive/2012/05/30/2526125.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/zhwl/archive/2012/05/30/2526124.html</id><title type="text">给视频加滚动字幕，给视频加字幕制作mv 录制的视频配背景音乐</title><summary type="text"/><published>2012-05-30T05:20:00Z</published><updated>2012-05-30T05:20:00Z</updated><author><name>郑文亮</name><uri>http://www.cnblogs.com/zhwl/</uri></author><link rel="alternate" href="http://www.cnblogs.com/zhwl/archive/2012/05/30/2526124.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/zhwl/archive/2012/05/30/2526124.html"/><content type="html">&lt;div id="detail_0" class="detail" style="position: relative;"&gt;&lt;p&gt;给视频添加滚动字幕方法其实很简单，像我们下载的电影，歌曲，用手机录制的视频都可以加字幕，或者滚动字幕，也可以加背景音乐或其它声音，给视频开头或结尾加一张图片或多张图片等等都是可以实现的，而这一切都是那么简单，下面我们重点来操作如何给视频加滚动字幕&lt;em&gt;！&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;给视频添加滚动字幕&lt;/strong&gt;前的视频：&lt;a href="http://v.youku.com/v_show/id_XMzQxNTI3MzMy.html" target="_blank"&gt;http://v.youku.com/v_show/id_XMzQxNTI3MzMy.html&lt;/a&gt;&amp;nbsp;预览原视频画面, 无字幕，背景音乐是原来的，请看：&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;给视频添加滚动字幕，并更换背景音乐后：&lt;a href="http://v.youku.com/v_show/id_XMzQxODA1MjEy.html" target="_blank"&gt;http://v.youku.com/v_show/id_XMzQxODA1MjEy.html&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;第一步：&lt;a href="http://www.leawo.cn/leawo_ppt2video_cn.exe" target="_blank"&gt;&lt;span style="color: #f00000;"&gt;下载给视频加字幕软件&amp;gt;&amp;gt;&lt;/span&gt;&lt;/a&gt;&amp;nbsp; 安装；&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;第二步：运行office powerpoint( 电脑桌面&amp;nbsp;-&amp;nbsp; 开始 -&amp;nbsp; 程序 -&amp;nbsp; Microsoft Office -&amp;nbsp; Microsoft PowerPoint&amp;nbsp;) 如下图所示：&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;img src="http://www.leawo.cn/attachment/201201/11/627_1326271620MLtR.jpg" alt="给视频加滚动字幕，给视频加字幕制作mv" /&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;菜单 -&amp;nbsp; 插入 -&amp;nbsp; 视频 -&amp;nbsp; 文件中的视频 如图:&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;img src="http://www.leawo.cn/attachment/201201/11/627_1326263303g9KD.jpg" alt="给视频加滚动字幕，给视频加字幕制作mv" /&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;选中视频文件，然后点击插入&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;img src="http://www.leawo.cn/attachment/201201/11/627_13262652093lM4.jpg" alt="给视频加滚动字幕，给视频加字幕制作mv" /&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;插入视频后，鼠标放到视频上面然后点击鼠标右键，选择&amp;ldquo;大小和位置&amp;rdquo;，如图&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;img src="http://www.leawo.cn/attachment/201201/11/627_132626521226SZ.jpg" alt="给视频加滚动字幕，给视频加字幕制作mv" /&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;这时候我们看到原始尺寸宽度是17.78厘米、高度是10厘米，记宽度和高度是多少，然后点击关闭，进入菜单 -&amp;nbsp; 设计 -&amp;nbsp; 页面设置，把宽度和高度17.78，10输入对应框里面，如下面图片所示：&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;img src="http://www.leawo.cn/attachment/201201/11/627_1326265215HYo1.jpg" alt="给视频加滚动字幕，给视频加字幕制作mv" /&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;把数字输入页面设置宽度和高度，然后确定...&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;img src="http://www.leawo.cn/attachment/201201/11/627_1326265217F5IM.jpg" alt="给视频加滚动字幕，给视频加字幕制作mv" /&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;下一步：把鼠标放到视频上面，点击右键，再进入&amp;ldquo;大小和位置&amp;rdquo; -&amp;nbsp; 点击重置，如图：&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;img src="http://www.leawo.cn/attachment/201201/11/627_132626521226SZ.jpg" alt="给视频加滚动字幕，给视频加字幕制作mv" /&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;img src="http://www.leawo.cn/attachment/201201/11/627_1326265675zQOq.jpg" alt="给视频加滚动字幕，给视频加字幕制作mv" /&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;点击重置后，然后关闭！&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;这时候，页面设置和视频高度和宽度是一致的，拖动视频与页面白色背景吻合，再把右下角拖至100%，如图：&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;img src="http://www.leawo.cn/attachment/201201/11/627_1326265678D2JO.jpg" alt="给视频加滚动字幕，给视频加字幕制作mv" width="760" /&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;鼠标放到视频上面点击鼠标右键，选择&amp;ldquo;置于底层&amp;rdquo;，如图&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;img src="http://www.leawo.cn/attachment/201201/11/627_132627330675Uq.jpg" alt="给视频加滚动字幕，给视频加字幕制作mv" /&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;单击此处添加副标题输入&amp;ldquo;视频滚动字幕从右至左显示&amp;nbsp; 狸窝视频加字幕软件下载地址 &lt;a href="http://www.leawo.cn/" target="_blank"&gt;www.leawo.cn&lt;/a&gt;&amp;nbsp; 狸窝照片制作视频软件&amp;nbsp; 联系QQ876292449&lt;strong&gt;&amp;rdquo;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;img src="http://www.leawo.cn/attachment/201201/11/627_1326273309ly00.jpg" alt="给视频加滚动字幕，给视频加字幕制作mv" /&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;选中文字，设置字体，大小，颜色等，然后选中文字 - &amp;nbsp;菜单动画 -&amp;nbsp; &amp;ldquo;飞入&amp;rdquo;，如图：&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;img src="http://www.leawo.cn/attachment/201201/11/627_1326273311FKLl.jpg" alt="给视频加滚动字幕，给视频加字幕制作mv" /&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;动画窗格 -&amp;nbsp; 双击下图中标示处：&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;img src="http://www.leawo.cn/attachment/201201/11/627_1326274080q4Vp.jpg" alt="给视频加滚动字幕，给视频加字幕制作mv" /&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;扩展：这个地方还可以设置字幕延迟再显示，方法 &lt;a href="http://www.leawo.cn/space-627-do-thread-id-30397.html" target="_blank"&gt;http://www.leawo.cn/space-627-do-thread-id-30397.html&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;img src="http://www.leawo.cn/attachment/201201/11/627_1326274082Pcgp.jpg" alt="给视频加滚动字幕，给视频加字幕制作mv" /&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;计时：设置与下面一样即可（图），然后确定！&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;img src="http://www.leawo.cn/attachment/201201/11/627_13262740854sZ4.jpg" alt="给视频加滚动字幕，给视频加字幕制作mv" /&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;到这一步，基本上差不多了，点击预览效果吧，等等，还有一步，得把视频设置自动播放形式，选中视频，然后进入播放 -&amp;nbsp; 自动，如图&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;img src="http://www.leawo.cn/attachment/201201/11/627_1326275624hTtr.jpg" alt="给视频加滚动字幕，给视频加字幕制作mv" width="760" /&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;好了，现在可以点击预览效果了....&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;img src="http://www.leawo.cn/attachment/201201/11/627_1326274892vTnq.jpg" alt="给视频加滚动字幕，给视频加字幕制作mv" /&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;img src="http://www.leawo.cn/attachment/201201/11/627_1326274898fnyY.jpg" alt="给视频加滚动字幕，给视频加字幕制作mv" /&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;感觉不错的话，保存吧，保存好后，关闭office powerpoint&amp;nbsp;如图：&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;img src="http://www.leawo.cn/attachment/201201/11/627_1326274901LloZ.jpg" alt="给视频加滚动字幕，给视频加字幕制作mv" /&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;img src="http://www.leawo.cn/attachment/201201/11/627_1326274910611n.jpg" alt="给视频加滚动字幕，给视频加字幕制作mv" /&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;现在运行此贴刚开始下载的(第一步：&lt;a href="http://www.leawo.cn/leawo_ppt2video_cn.exe" target="_blank"&gt;&lt;span style="color: #f00000;"&gt;下载给视频加字幕软件&amp;gt;&amp;gt;&lt;/span&gt;&lt;/a&gt;)，添加制作好的ppt文件，如图：&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;img src="http://www.leawo.cn/attachment/201201/11/627_1326274913tm6N.jpg" alt="给视频加滚动字幕，给视频加字幕制作mv" /&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;自定义：[背景音乐]添加背景音乐，设置循环播放；[声音设置](&lt;span style="color: #f00000;"&gt;打勾&lt;/span&gt;)忽略office powerpoint文件中的音频，如图：&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;img src="http://www.leawo.cn/attachment/201201/11/627_13262749152vIh.jpg" alt="给视频加滚动字幕，给视频加字幕制作mv" /&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;img src="http://www.leawo.cn/attachment/201201/11/627_1326275256RoVk.jpg" alt="给视频加滚动字幕，给视频加字幕制作mv" /&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;自定义设置好了后，选择预置方案输出格式，可以选择原视频相同格式，也可以选择其它视频格式，如图：&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;img src="http://www.leawo.cn/attachment/201201/11/627_132627525926AY.jpg" alt="给视频加滚动字幕，给视频加字幕制作mv" /&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;进入设置，选择视频尺寸，进行参数设置等：&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;img src="http://www.leawo.cn/attachment/201201/11/627_1326275261gESx.jpg" alt="给视频加滚动字幕，给视频加字幕制作mv" /&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;确定回到主界面，点击软件右下角转换按钮生成视频吧，如图：&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;img src="http://www.leawo.cn/attachment/201201/11/627_1326275264TRLR.jpg" alt="给视频加滚动字幕，给视频加字幕制作mv" /&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;生成视频完成，点击预览视频效果：&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;img src="http://www.leawo.cn/attachment/201201/11/627_1326275622o5bD.jpg" alt="给视频加滚动字幕，给视频加字幕制作mv" /&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;最简单最容易掌握的&lt;strong&gt;视频添加滚动字幕软件&lt;/strong&gt;，上面操作步骤可联系在线客服远程演示！&lt;/p&gt;&lt;p&gt;软件下载地址：&lt;a href="http://www.leawo.cn/leawo_ppt2video_cn.exe" target="_blank"&gt;&lt;span style="color: #f00000;"&gt;http://www.leawo.cn/leawo_ppt2video_cn.exe&lt;/span&gt;&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;span style="color: #008000;"&gt;除了可以加滚动字幕还可以加动画图片，请看效果视频：&lt;/span&gt;&lt;a href="http://v.youku.com/v_show/id_XMzQyMDA1NTM2.html" target="_blank"&gt;&lt;span style="color: #008000;"&gt;&lt;strong&gt;http://v.youku.com/v_show/id_XMzQyMDA1NTM2.html&lt;/strong&gt;&lt;/span&gt;&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;更多好玩的视频加字幕，照片制作视频，动画显示，请继续关注狸窝家园！！！&lt;/p&gt;&lt;div id="click_div"&gt;&amp;nbsp;&lt;/div&gt;&lt;div style="text-align: left; padding-bottom: 5px; margin: 15px 0px 5px 20px; padding-left: 20px; padding-right: 0px; background: url('http://www.cnblogs.com/zhwl/admin/images/ad.gif') no-repeat 0px 6px; padding-top: 4px;"&gt;&lt;div style="display: none;"&gt;-&lt;/div&gt;&lt;iframe id="cproIframe3" src="http://cpro.baidu.com/cpro/ui/uijs.php?prt=1338354982252&amp;amp;c01=0&amp;amp;ev=0&amp;amp;pn=4:2|text_default_960_90:text_default_120_240|103:97&amp;amp;dt=1338354985&amp;amp;rt=0&amp;amp;did=3&amp;amp;csl=zh-cn&amp;amp;cce=true&amp;amp;cmi=0&amp;amp;cpl=0&amp;amp;cja=true&amp;amp;chi=0&amp;amp;ccd=32&amp;amp;csn=1280,993&amp;amp;csp=1280,1024&amp;amp;lmt=1338354985&amp;amp;jn=3&amp;amp;jk=1ea358f8b5aa3d1f&amp;amp;ready=3&amp;amp;refer=http%3A%2F%2Fwww.leawo.cn%2Fad%2Fleawoindex25.html&amp;amp;word=http%3A%2F%2Fwww.leawo.cn%2Fspace-627-do-thread-id-29875.html&amp;amp;if=16&amp;amp;cn=0&amp;amp;fv=11&amp;amp;cpa=1&amp;amp;rss7=&amp;amp;aurl=&amp;amp;cad=1&amp;amp;ch=0&amp;amp;at=103&amp;amp;ts=1&amp;amp;rsi5=4&amp;amp;rss6=%23e10900&amp;amp;rss5=&amp;amp;rss4=&amp;amp;rss3=&amp;amp;rss2=%230000FF&amp;amp;rss1=%23f5f8fd&amp;amp;rss0=%23f5f8fd&amp;amp;rad=&amp;amp;rsi0=468&amp;amp;rsi1=15&amp;amp;n=66030058_cpr&amp;amp;tn=tlink_default_468_15&amp;amp;tu=u805026" frameborder="0" marginwidth="0" marginheight="0" scrolling="no" align="center,center" width="468" height="15"&gt;&lt;/iframe&gt;&lt;/div&gt;&lt;/div&gt;&lt;h2 style="margin: 3px 0px 0px 35px; color: #5a5b5b; font-size: 13px;"&gt;给视频加滚动字幕，给视频加字幕制作mv 录制的视频配背景音乐的评论&lt;/strong&gt;&lt;/p&gt;&lt;div class="page"&gt;&amp;nbsp;&lt;/div&gt;&lt;div id="post_ul"&gt;&lt;div id="post_39075_li"&gt;&lt;ul class="line_list"&gt;&lt;li&gt;&lt;table style="width: 100%;"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;div class="title"&gt;&lt;div class="r_option"&gt;&amp;nbsp;&lt;/div&gt;&lt;span class="gray"&gt;#1 楼&lt;/span&gt; 回复：给视频加滚动字幕，给视频加字幕制作mv 录制的视频配背景音乐&lt;br /&gt;&lt;a href="http://www.leawo.cn/space-627.html" rel="nofollow"&gt;Landon&lt;/a&gt; &lt;span class="gray"&gt;发布于 2012-03-09 23:40&lt;/span&gt; &lt;/div&gt;&lt;div id="detail_39075" class="detail"&gt;这个很简单的，转换成你手机支持的视频，包括格式和参数。&lt;br /&gt;参考，如何转换手机视频 &lt;a href="http://www.leawo.cn/space-627-do-thread-id-29789.html" target="_blank"&gt;http://www.leawo.cn/space-627-do-thread-id-29789.html&lt;/a&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div id="post_39276_li"&gt;&lt;ul class="line_list"&gt;&lt;li&gt;&lt;table style="width: 100%;"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;div class="title"&gt;&lt;div class="r_option"&gt;&amp;nbsp;&lt;/div&gt;&lt;span class="gray"&gt;#2 楼&lt;/span&gt; 回复：给视频加滚动字幕，给视频加字幕制作mv 录制的视频配背景音乐&lt;br /&gt;&lt;a href="http://www.leawo.cn/space-71651.html" rel="nofollow"&gt;文田主月&lt;/a&gt; &lt;span class="gray"&gt;发布于 2012-03-18 13:27&lt;/span&gt; &lt;/div&gt;&lt;div id="detail_39276" class="detail"&gt;将格式用狸窝转换器转成&amp;ldquo;MP4&amp;rdquo;格式就能看了。&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div id="post_39668_li"&gt;&lt;ul class="line_list"&gt;&lt;li&gt;&lt;table style="width: 100%;"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;div class="title"&gt;&lt;div class="r_option"&gt;&amp;nbsp;&lt;/div&gt;&lt;span class="gray"&gt;#3 楼&lt;/span&gt; 回复：给视频加滚动字幕，给视频加字幕制作mv 录制的视频配背景音乐&lt;br /&gt;&lt;a href="http://www.leawo.cn/space-365249.html" rel="nofollow"&gt;Dai_April&lt;/a&gt; &lt;span class="gray"&gt;发布于 2012-04-01 09:08&lt;/span&gt; &lt;/div&gt;&lt;div id="detail_39668" class="detail"&gt;视频前如何加一幕文字说明？视频开场白怎么制作？: &lt;br /&gt;&lt;a href="http://www.leawo.cn/space-365249-do-thread-id-30291.html" target="_blank"&gt;http://www.leawo.cn/space-365249-do-thread-id-30291.html&lt;/a&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;/div&gt;&lt;img src="http://www.cnblogs.com/zhwl/aggbug/2526124.html?type=0" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/zhwl/archive/2012/05/30/2526124.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/yankliu-vip/archive/2012/05/30/2526121.html</id><title type="text">jquery 控制按钮几秒后可用 [代码片段]</title><summary type="text"/><published>2012-05-30T05:19:00Z</published><updated>2012-05-30T05:19:00Z</updated><author><name>CooPro U</name><uri>http://www.cnblogs.com/yankliu-vip/</uri></author><link rel="alternate" href="http://www.cnblogs.com/yankliu-vip/archive/2012/05/30/2526121.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/yankliu-vip/archive/2012/05/30/2526121.html"/><content type="html">&lt;p&gt;在某些提交表单等场景，有些控制按钮是几秒钟后可用，这几秒是灰色不可用的。今天使用jquery，写一写。在网上找了几个发现有很多问题，不是自己想要的效果，经过改动，终于可以啦，备注一下。&lt;/p&gt;&lt;p&gt;HTML代码：&lt;/p&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;" onclick="cnblogs_code_show('dcc069fa-7c54-497a-87f4-21fa53c41357')"&gt;&lt;div id="cnblogs_code_open_dcc069fa-7c54-497a-87f4-21fa53c41357" class="cnblogs_code_hide"&gt;&lt;span style="color: #0000ff;"&gt;&amp;lt;!&lt;/span&gt;&lt;span style="color: #ff00ff;"&gt;DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;&amp;gt;&lt;/span&gt;&lt;br/&gt;&lt;br/&gt;&lt;span style="color: #0000ff;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000;"&gt;html &lt;/span&gt;&lt;span style="color: #ff0000;"&gt;xmlns&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;="http://www.w3.org/1999/xhtml"&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;&amp;gt;&lt;/span&gt;&lt;br/&gt;&lt;span style="color: #0000ff;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000;"&gt;head&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;&amp;gt;&lt;/span&gt;&lt;br/&gt;    &lt;span style="color: #0000ff;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000;"&gt;title&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;&amp;gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000;"&gt;title&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;&amp;gt;&lt;/span&gt;&lt;br/&gt;    &lt;span style="color: #008000;"&gt;&amp;lt;!--&lt;/span&gt;&lt;span style="color: #008000;"&gt;引入jquery文件&lt;/span&gt;&lt;span style="color: #008000;"&gt;--&amp;gt;&lt;/span&gt;&lt;br/&gt;    &lt;span style="color: #0000ff;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000;"&gt;script &lt;/span&gt;&lt;span style="color: #ff0000;"&gt;type&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;="text/javascript"&lt;/span&gt;&lt;span style="color: #ff0000;"&gt; src&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;="Scripts/jquery-1.7.1.js"&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;&amp;gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000;"&gt;script&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;&amp;gt;&lt;/span&gt;&lt;br/&gt;    &lt;span style="color: #008000;"&gt;&amp;lt;!--&lt;/span&gt;&lt;span style="color: #008000;"&gt;引入我们自己写的js文件&lt;/span&gt;&lt;span style="color: #008000;"&gt;--&amp;gt;&lt;/span&gt;&lt;br/&gt;    &lt;span style="color: #0000ff;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000;"&gt;script &lt;/span&gt;&lt;span style="color: #ff0000;"&gt;type&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;="text/javascript"&lt;/span&gt;&lt;span style="color: #ff0000;"&gt; src&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;="Scripts/jwyloadmessage.js"&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;&amp;gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000;"&gt;script&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;&amp;gt;&lt;/span&gt;&lt;br/&gt;    &lt;br/&gt;&lt;span style="color: #0000ff;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000;"&gt;head&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;&amp;gt;&lt;/span&gt;&lt;br/&gt;&lt;span style="color: #0000ff;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000;"&gt;body&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;&amp;gt;&lt;/span&gt;&lt;br/&gt;&lt;br/&gt;     &lt;span style="color: #0000ff;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000;"&gt;input &lt;/span&gt;&lt;span style="color: #ff0000;"&gt;id&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;="btnTest"&lt;/span&gt;&lt;span style="color: #ff0000;"&gt; type&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;="button"&lt;/span&gt;&lt;span style="color: #ff0000;"&gt; name&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;="testbutton"&lt;/span&gt;&lt;span style="color: #ff0000;"&gt; value&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;="提交"&lt;/span&gt;  &lt;span style="color: #0000ff;"&gt;/&amp;gt;&lt;/span&gt;&lt;br/&gt;&lt;span style="color: #0000ff;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000;"&gt;body&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;&amp;gt;&lt;/span&gt;&lt;br/&gt;&lt;span style="color: #0000ff;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000;"&gt;html&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;p&gt;js代码：&lt;/p&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;"&gt;&lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;/&amp;lt;reference path="../Scripts/jquery-1.7.1.js"&amp;gt;&lt;/span&gt;&lt;br/&gt;&lt;span style="color: #000000;"&gt;&lt;br/&gt;&lt;br/&gt;$(document).ready(&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;function&lt;/span&gt;&lt;span style="color: #000000;"&gt; () {    &lt;br/&gt;&lt;br/&gt;    $(&lt;/span&gt;"#btnTest").click(&lt;span style="color: #0000ff;"&gt;function&lt;/span&gt;&lt;span style="color: #000000;"&gt; () {&lt;br/&gt;        &lt;/span&gt;&lt;span style="color: #0000ff;"&gt;if&lt;/span&gt; (!&lt;span style="color: #000000;"&gt;canSubmit) {&lt;br/&gt;            updateTimeLabel(&lt;/span&gt;5&lt;span style="color: #000000;"&gt;);&lt;br/&gt;        }&lt;br/&gt;    });&lt;br/&gt;    &lt;/span&gt;&lt;span style="color: #0000ff;"&gt;var&lt;/span&gt; canSubmit;&lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;标志&lt;/span&gt;&lt;br/&gt;    &lt;span style="color: #0000ff;"&gt;function&lt;/span&gt;&lt;span style="color: #000000;"&gt; updateTimeLabel(time) {&lt;br/&gt;        &lt;/span&gt;&lt;span style="color: #0000ff;"&gt;var&lt;/span&gt; btn = $("#btnTest"&lt;span style="color: #000000;"&gt;);&lt;br/&gt;        btn.fadeIn(&lt;/span&gt;1000&lt;span style="color: #000000;"&gt;);&lt;br/&gt;        btn.val(time &lt;/span&gt;&amp;lt;= 0 ? "提交" : ("" + (time) + "秒后可提交"&lt;span style="color: #000000;"&gt;));&lt;br/&gt;        &lt;/span&gt;&lt;span style="color: #0000ff;"&gt;var&lt;/span&gt; hander = setInterval(&lt;span style="color: #0000ff;"&gt;function&lt;/span&gt;&lt;span style="color: #000000;"&gt; () {&lt;br/&gt;            &lt;/span&gt;&lt;span style="color: #0000ff;"&gt;if&lt;/span&gt; (time &amp;lt;= 0&lt;span style="color: #000000;"&gt;) {&lt;br/&gt;                &lt;br/&gt;                canSubmit &lt;/span&gt;= &lt;span style="color: #0000ff;"&gt;false&lt;/span&gt;&lt;span style="color: #000000;"&gt;;&lt;br/&gt;                &lt;br/&gt;                clearInterval(hander);&lt;br/&gt;                btn.val(&lt;/span&gt;"提交"&lt;span style="color: #000000;"&gt;);&lt;br/&gt;                btn.removeAttr(&lt;/span&gt;"disabled"&lt;span style="color: #000000;"&gt;);&lt;br/&gt;            }&lt;br/&gt;            &lt;/span&gt;&lt;span style="color: #0000ff;"&gt;else&lt;/span&gt;&lt;span style="color: #000000;"&gt; {&lt;br/&gt;                canSubmit &lt;/span&gt;= &lt;span style="color: #0000ff;"&gt;true&lt;/span&gt;&lt;span style="color: #000000;"&gt;;&lt;br/&gt;                btn.attr({ &lt;/span&gt;"disabled": "disabled"&lt;span style="color: #000000;"&gt; });&lt;br/&gt;                btn.val(&lt;/span&gt;"" + (time--) + "秒后可提交"&lt;span style="color: #000000;"&gt;);&lt;br/&gt;            }&lt;br/&gt;        }, &lt;/span&gt;1000&lt;span style="color: #000000;"&gt;);&lt;br/&gt;        &lt;br/&gt;    }&lt;br/&gt;&lt;br/&gt;});&lt;/span&gt;&lt;/div&gt;&lt;p&gt;以上代码经过测试：IE 8.0+ 、firefox&lt;/p&gt;&lt;p&gt;-----&amp;ldquo;让这个世界因为有了我，而有一点点的不一样。&amp;rdquo;------&lt;/p&gt;&lt;img src="http://www.cnblogs.com/yankliu-vip/aggbug/2526121.html?type=0" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/yankliu-vip/archive/2012/05/30/2526121.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/iroultron/archive/2012/05/30/2526122.html</id><title type="text">使用rsync快速删除海量文件</title><summary type="text"/><published>2012-05-30T05:19:00Z</published><updated>2012-05-30T05:19:00Z</updated><author><name>耶和华の冬天</name><uri>http://www.cnblogs.com/iroultron/</uri></author><link rel="alternate" href="http://www.cnblogs.com/iroultron/archive/2012/05/30/2526122.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/iroultron/archive/2012/05/30/2526122.html"/><content type="html">&lt;p&gt;今天遇见一个百万级的cache目录，删了20+分钟只删掉一个目录。。。。&lt;/p&gt;&lt;p&gt;在网上找到了一种巧妙的快速删除方法，原理很简单，使用rsync同步一个空目录即可,对于万级文件的目录基本是秒删，回车就OK，爽歪歪~~~~~&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;步骤如下：&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;1、建立一个空目录&lt;/p&gt;&lt;p&gt;mkdir -p /tmp/rsync_blank&lt;/p&gt;&lt;p&gt;2、确立需要清空的目标目录&lt;/p&gt;&lt;p&gt;/data/web/vip/htdocs/tuan&lt;/p&gt;&lt;p&gt;3、使用rsync同步删除（注意目录后面的&amp;ldquo;/&amp;rdquo;），整体效率会快一个数量级的样子。&lt;/p&gt;&lt;p&gt;rsync --delete-before -a -H -v --progress --stats /tmp/rsync_blank&lt;strong&gt;/&lt;/strong&gt; /data/web/vip/htdocs/tuan&lt;strong&gt;/&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;选项说明：&lt;/p&gt;&lt;p&gt;&amp;ndash;delete-before 接收者在传输之前进行删除操作&lt;/p&gt;&lt;p&gt;&amp;ndash;progress 在传输时显示传输过程&lt;/p&gt;&lt;p&gt;-a 归档模式，表示以递归方式传输文件，并保持所有文件属性&lt;/p&gt;&lt;p&gt;-H 保持硬连接的文件&lt;/p&gt;&lt;p&gt;-v 详细输出模式&lt;/p&gt;&lt;p&gt;-stats 给出某些文件的传输状态&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;一般我们不需要显示进度，使用以下命令即可&lt;/p&gt;&lt;p&gt;rsync --delete-before -a -H /tmp/rsync_blank&lt;strong&gt;/&lt;/strong&gt; /data/web/vip/htdocs/tuan&lt;strong&gt;/&lt;/strong&gt;&lt;/p&gt;&lt;img src="http://www.cnblogs.com/iroultron/aggbug/2526122.html?type=0" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/iroultron/archive/2012/05/30/2526122.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/huabengao/archive/2012/05/30/2526120.html</id><title type="text">详解C#break ,continue, return</title><summary type="text"/><published>2012-05-30T05:18:00Z</published><updated>2012-05-30T05:18:00Z</updated><author><name>kevin_hua</name><uri>http://www.cnblogs.com/huabengao/</uri></author><link rel="alternate" href="http://www.cnblogs.com/huabengao/archive/2012/05/30/2526120.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/huabengao/archive/2012/05/30/2526120.html"/><content type="html">&lt;p&gt;C#编程语法中我们会碰到break ,continue, return这三个常用的关键字，那么关于这三个关键字的使用具体的操作是什么呢？我们在使用这三关键字的时候需要注意和需要理解的规则是什么呢？让我们开始介绍吧：&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; C#编程语法之break语句：&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; break语句会使运行的程序立刻退出包含在最内层的循环或者退出一个switch语句。由于它是用来退出循环或者switch语句，所以只有当它出现在这些语句时，这种形式的break语句才是合法的。&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 如果一个循环的终止条件非常复杂，那么使用break语句来实现某些条件比用一个循环表达式来表达所有的条件容易得多。&lt;/p&gt;&lt;ol class="dp-c"&gt;&lt;li class="alt"&gt;&lt;span class="keyword"&gt;for&lt;/span&gt;(var&amp;nbsp;i=1;i&amp;lt;=10;i++) &amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&lt;/li&gt;&lt;li class="alt"&gt;{ &amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&lt;span class="keyword"&gt;if&lt;/span&gt;(i==6)&amp;nbsp;&lt;span class="keyword"&gt;break&lt;/span&gt;; &amp;nbsp;&lt;/li&gt;&lt;li class="alt"&gt;&amp;nbsp;document.write(i); &amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;} &amp;nbsp;&lt;/li&gt;&lt;li class="alt"&gt;&lt;span class="comment"&gt;//输出结果：12345 &lt;/span&gt;&amp;nbsp;&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;&lt;strong&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; C#编程语法之continue语句：&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; continue语句和break语句相似。所不同的是，它不是退出一个循环，而是开始循环的一次新迭代。&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; continue语句只能用在while语句、do/while语句、for语句、或者for/in语句的循环体内，在其它地方使用都会引起错误！&lt;/p&gt;&lt;ol class="dp-c"&gt;&lt;li class="alt"&gt;&lt;span class="keyword"&gt;for&lt;/span&gt;(var&amp;nbsp;i=1;i&amp;lt;=10;i++) &amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&lt;/li&gt;&lt;li class="alt"&gt;{ &amp;nbsp;&lt;/li&gt;&lt;li&gt;&lt;span class="keyword"&gt;if&lt;/span&gt;(i==6)&amp;nbsp;&lt;span class="keyword"&gt;continue&lt;/span&gt;; &amp;nbsp;&lt;/li&gt;&lt;li class="alt"&gt;document.write(i); &amp;nbsp;&lt;/li&gt;&lt;li&gt;} &amp;nbsp;&lt;/li&gt;&lt;li class="alt"&gt;&lt;span class="comment"&gt;//输出结果：1234578910 &lt;/span&gt;&amp;nbsp;&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;&lt;strong&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; C#编程语法之return语句：&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; return语句就是用于指定函数返回的值。return语句只能出现在函数体内，出现在代码中的其他任何地方都会造成语法错误！&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 当执行return语句时，即使函数主体中还有其他语句，函数执行也会停止！&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; C#编程语法中的break ,continue, return这三个常用的关键字的使用相关内容就向你介绍到这里，希望对你了解和学习break ,continue, return这三个常用关键字的使用有所帮助。&lt;/p&gt;&lt;img src="http://www.cnblogs.com/huabengao/aggbug/2526120.html?type=0" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/huabengao/archive/2012/05/30/2526120.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/x1957/archive/2012/05/30/2526118.html</id><title type="text">NumPy for MATLAB users</title><summary type="text"/><published>2012-05-30T05:14:00Z</published><updated>2012-05-30T05:14:00Z</updated><author><name>1957</name><uri>http://www.cnblogs.com/x1957/</uri></author><link rel="alternate" href="http://www.cnblogs.com/x1957/archive/2012/05/30/2526118.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/x1957/archive/2012/05/30/2526118.html"/><content type="html">&lt;p&gt;&lt;strong&gt;NumPy for MATLAB users&lt;/strong&gt;&lt;/p&gt;&lt;div&gt;&lt;p&gt;&lt;strong&gt;Help&lt;/strong&gt;&lt;/p&gt;&lt;table&gt;&lt;tbody&gt;&lt;tr&gt;&lt;th&gt;MATLAB/Octave&lt;/th&gt;&lt;th&gt;Python&lt;/th&gt;&lt;th&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;doc&lt;/tt&gt;&lt;br /&gt;&lt;span class="clone"&gt;&lt;tt title="Octave"&gt;help -i % browse with Info&lt;/tt&gt;&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; IPython"&gt;help()&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Browse help interactively&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;help help&lt;/tt&gt;&amp;nbsp;&lt;span class="alt"&gt;or&lt;/span&gt;&amp;nbsp;&lt;tt title="matlab"&gt;doc doc&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python"&gt;help&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Help on using help&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;help plot&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python"&gt;help(plot)&lt;/tt&gt;&amp;nbsp;&lt;span class="alt"&gt;or&lt;/span&gt;&amp;nbsp;&lt;tt title="Python; IPython"&gt;?plot&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Help for a function&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;help splines&lt;/tt&gt;&amp;nbsp;&lt;span class="alt"&gt;or&lt;/span&gt;&amp;nbsp;&lt;tt title="matlab"&gt;doc splines&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python"&gt;help(pylab)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Help for a toolbox/library package&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;demo&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;Demonstration examples&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div&gt;&lt;p&gt;&lt;strong&gt;Searching available documentation&lt;/strong&gt;&lt;/p&gt;&lt;table&gt;&lt;tbody&gt;&lt;tr&gt;&lt;th&gt;MATLAB/Octave&lt;/th&gt;&lt;th&gt;Python&lt;/th&gt;&lt;th&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;lookfor plot&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;Search help files&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;help&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python"&gt;help(); modules [Numeric]&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;List available packages&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;which plot&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python"&gt;help(plot)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Locate functions&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;p&gt;&lt;strong&gt;Using interactively&lt;/strong&gt;&lt;/p&gt;&lt;table&gt;&lt;tbody&gt;&lt;tr&gt;&lt;th&gt;MATLAB/Octave&lt;/th&gt;&lt;th&gt;Python&lt;/th&gt;&lt;th&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;span class="clone"&gt;&lt;tt title="Octave"&gt;octave -q&lt;/tt&gt;&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; IPython"&gt;ipython -pylab&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Start session&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;span class="clone"&gt;&lt;tt title="Octave"&gt;TAB&lt;/tt&gt;&amp;nbsp;&lt;span class="alt"&gt;or&lt;/span&gt;&amp;nbsp;&lt;tt title="Octave"&gt;M-?&lt;/tt&gt;&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; IPython"&gt;TAB&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Auto completion&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;foo(.m)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python"&gt;execfile('foo.py')&lt;/tt&gt;&amp;nbsp;&lt;span class="alt"&gt;or&lt;/span&gt;&amp;nbsp;&lt;tt title="Python; IPython"&gt;run foo.py&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Run code from file&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;span class="clone"&gt;&lt;tt title="Octave"&gt;history&lt;/tt&gt;&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; IPython"&gt;hist -n&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Command history&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;diary on [..] diary off&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;Save command history&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;exit&lt;/tt&gt;&amp;nbsp;&lt;span class="alt"&gt;or&lt;/span&gt;&amp;nbsp;&lt;tt title="matlab"&gt;quit&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python"&gt;CTRL-D&lt;/tt&gt;&lt;br /&gt;&lt;tt title="Python"&gt;CTRL-Z # windows&lt;/tt&gt;&lt;br /&gt;&lt;tt title="Python; sys"&gt;sys.exit()&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;End session&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;p&gt;&lt;strong&gt;Operators&lt;/strong&gt;&lt;/p&gt;&lt;table&gt;&lt;tbody&gt;&lt;tr&gt;&lt;th&gt;MATLAB/Octave&lt;/th&gt;&lt;th&gt;Python&lt;/th&gt;&lt;th&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;help -&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;Help on operator syntax&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div&gt;&lt;p&gt;&lt;strong&gt;Arithmetic operators&lt;/strong&gt;&lt;/p&gt;&lt;table&gt;&lt;tbody&gt;&lt;tr&gt;&lt;th&gt;MATLAB/Octave&lt;/th&gt;&lt;th&gt;Python&lt;/th&gt;&lt;th&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;a=1; b=2;&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python"&gt;a=1; b=1&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Assignment; defining a number&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;a + b&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python"&gt;a + b&lt;/tt&gt;&amp;nbsp;&lt;span class="alt"&gt;or&lt;/span&gt;&amp;nbsp;&lt;tt title="Python"&gt;add(a,b)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Addition&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;a - b&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python"&gt;a - b&lt;/tt&gt;&amp;nbsp;&lt;span class="alt"&gt;or&lt;/span&gt;&amp;nbsp;&lt;tt title="Python"&gt;subtract(a,b)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Subtraction&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;a * b&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python"&gt;a * b&lt;/tt&gt;&amp;nbsp;&lt;span class="alt"&gt;or&lt;/span&gt;&amp;nbsp;&lt;tt title="Python"&gt;multiply(a,b)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Multiplication&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;a / b&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python"&gt;a / b&lt;/tt&gt;&amp;nbsp;&lt;span class="alt"&gt;or&lt;/span&gt;&amp;nbsp;&lt;tt title="Python"&gt;divide(a,b)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Division&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;a .^ b&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python"&gt;a ** b&lt;/tt&gt;&lt;br /&gt;&lt;tt title="Python; NumPy"&gt;power(a,b)&lt;/tt&gt;&lt;br /&gt;&lt;tt title="Python; math"&gt;pow(a,b)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Power, $a^b$&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;rem(a,b)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python"&gt;a % b&lt;/tt&gt;&lt;br /&gt;&lt;tt title="Python; NumPy"&gt;remainder(a,b)&lt;/tt&gt;&lt;br /&gt;&lt;tt title="Python; math"&gt;fmod(a,b)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Remainder&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;span class="clone"&gt;&lt;tt title="Octave"&gt;a+=1&lt;/tt&gt;&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python"&gt;a+=b&lt;/tt&gt;&amp;nbsp;&lt;span class="alt"&gt;or&lt;/span&gt;&amp;nbsp;&lt;tt title="Python"&gt;add(a,b,a)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;In place operation to save array creation overhead&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;factorial(a)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;Factorial, $n!$&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;p&gt;&lt;strong&gt;Relational operators&lt;/strong&gt;&lt;/p&gt;&lt;table&gt;&lt;tbody&gt;&lt;tr&gt;&lt;th&gt;MATLAB/Octave&lt;/th&gt;&lt;th&gt;Python&lt;/th&gt;&lt;th&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;a == b&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python"&gt;a == b&lt;/tt&gt;&amp;nbsp;&lt;span class="alt"&gt;or&lt;/span&gt;&amp;nbsp;&lt;tt title="Python"&gt;equal(a,b)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Equal&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;a &amp;lt; b&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python"&gt;a &amp;lt; b&lt;/tt&gt;&amp;nbsp;&lt;span class="alt"&gt;or&lt;/span&gt;&amp;nbsp;&lt;tt title="Python"&gt;less(a,b)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Less than&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;a &amp;gt; b&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python"&gt;a &amp;gt; b&lt;/tt&gt;&amp;nbsp;&lt;span class="alt"&gt;or&lt;/span&gt;&amp;nbsp;&lt;tt title="Python"&gt;greater(a,b)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Greater than&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;a &amp;lt;= b&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python"&gt;a &amp;lt;= b&lt;/tt&gt;&amp;nbsp;&lt;span class="alt"&gt;or&lt;/span&gt;&amp;nbsp;&lt;tt title="Python"&gt;less_equal(a,b)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Less than or equal&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;a &amp;gt;= b&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python"&gt;a &amp;gt;= b&lt;/tt&gt;&amp;nbsp;&lt;span class="alt"&gt;or&lt;/span&gt;&amp;nbsp;&lt;tt title="Python"&gt;greater_equal(a,b)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Greater than or equal&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;a ~= b&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python"&gt;a != b&lt;/tt&gt;&amp;nbsp;&lt;span class="alt"&gt;or&lt;/span&gt;&amp;nbsp;&lt;tt title="Python"&gt;not_equal(a,b)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Not Equal&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;p&gt;&lt;strong&gt;Logical operators&lt;/strong&gt;&lt;/p&gt;&lt;table&gt;&lt;tbody&gt;&lt;tr&gt;&lt;th&gt;MATLAB/Octave&lt;/th&gt;&lt;th&gt;Python&lt;/th&gt;&lt;th&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;a &amp;amp;&amp;amp; b&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python"&gt;a and b&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Short-circuit logical AND&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;a || b&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python"&gt;a or b&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Short-circuit logical OR&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;a &amp;amp; b&lt;/tt&gt;&amp;nbsp;&lt;span class="alt"&gt;or&lt;/span&gt;&amp;nbsp;&lt;tt title="matlab"&gt;and(a,b)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python"&gt;logical_and(a,b)&lt;/tt&gt;&amp;nbsp;&lt;span class="alt"&gt;or&lt;/span&gt;&amp;nbsp;&lt;tt title="Python"&gt;a and b&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Element-wise logical AND&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;a | b&lt;/tt&gt;&amp;nbsp;&lt;span class="alt"&gt;or&lt;/span&gt;&amp;nbsp;&lt;tt title="matlab"&gt;or(a,b)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python"&gt;logical_or(a,b)&lt;/tt&gt;&amp;nbsp;&lt;span class="alt"&gt;or&lt;/span&gt;&amp;nbsp;&lt;tt title="Python"&gt;a or b&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Element-wise logical OR&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;xor(a, b)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python"&gt;logical_xor(a,b)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Logical EXCLUSIVE OR&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;~a&lt;/tt&gt;&amp;nbsp;&lt;span class="alt"&gt;or&lt;/span&gt;&amp;nbsp;&lt;tt title="matlab"&gt;not(a)&lt;/tt&gt;&lt;br /&gt;&lt;span class="clone"&gt;&lt;tt title="Octave"&gt;~a&lt;/tt&gt;&amp;nbsp;&lt;span class="alt"&gt;or&lt;/span&gt;&amp;nbsp;&lt;tt title="Octave"&gt;!a&lt;/tt&gt;&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python"&gt;logical_not(a)&lt;/tt&gt;&amp;nbsp;&lt;span class="alt"&gt;or&lt;/span&gt;&amp;nbsp;&lt;tt title="Python"&gt;not a&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Logical NOT&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;any(a)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;True if any element is nonzero&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;all(a)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;True if all elements are nonzero&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;p&gt;&lt;strong&gt;root and logarithm&lt;/strong&gt;&lt;/p&gt;&lt;table&gt;&lt;tbody&gt;&lt;tr&gt;&lt;th&gt;MATLAB/Octave&lt;/th&gt;&lt;th&gt;Python&lt;/th&gt;&lt;th&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;sqrt(a)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; math"&gt;math.sqrt(a)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Square root&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;log(a)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; math"&gt;math.log(a)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Logarithm, base $e$ (natural)&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;log10(a)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; math"&gt;math.log10(a)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Logarithm, base 10&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;log2(a)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; math"&gt;math.log(a, 2)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Logarithm, base 2 (binary)&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;exp(a)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; math"&gt;math.exp(a)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Exponential function&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;p&gt;&lt;strong&gt;Round off&lt;/strong&gt;&lt;/p&gt;&lt;table&gt;&lt;tbody&gt;&lt;tr&gt;&lt;th&gt;MATLAB/Octave&lt;/th&gt;&lt;th&gt;Python&lt;/th&gt;&lt;th&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;round(a)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;around(a)&lt;/tt&gt;&amp;nbsp;&lt;span class="alt"&gt;or&lt;/span&gt;&amp;nbsp;&lt;tt title="Python; math"&gt;math.round(a)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Round&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;ceil(a)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy,math"&gt;ceil(a)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Round up&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;floor(a)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy,math"&gt;floor(a)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Round down&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;fix(a)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;fix(a)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Round towards zero&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;p&gt;&lt;strong&gt;Mathematical constants&lt;/strong&gt;&lt;/p&gt;&lt;table&gt;&lt;tbody&gt;&lt;tr&gt;&lt;th&gt;MATLAB/Octave&lt;/th&gt;&lt;th&gt;Python&lt;/th&gt;&lt;th&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;pi&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; math"&gt;math.pi&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;$\pi=3.141592$&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;exp(1)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python"&gt;math.e&lt;/tt&gt;&amp;nbsp;&lt;span class="alt"&gt;or&lt;/span&gt;&amp;nbsp;&lt;tt title="Python"&gt;math.exp(1)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;$e=2.718281$&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div&gt;&lt;p&gt;&lt;strong&gt;Missing values; IEEE-754 floating point status flags&lt;/strong&gt;&lt;/p&gt;&lt;table&gt;&lt;tbody&gt;&lt;tr&gt;&lt;th&gt;MATLAB/Octave&lt;/th&gt;&lt;th&gt;Python&lt;/th&gt;&lt;th&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;NaN&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; numarray.ieeespecial"&gt;nan&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Not a Number&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;Inf&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; numarray.ieeespecial"&gt;inf&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Infinity, $\infty$&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; numarray.ieeespecial"&gt;plus_inf&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Infinity, $+\infty$&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; numarray.ieeespecial"&gt;minus_inf&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Infinity, $-\infty$&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; numarray.ieeespecial"&gt;plus_zero&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Plus zero, $+0$&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; numarray.ieeespecial"&gt;minus_zero&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Minus zero, $-0$&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;p&gt;&lt;strong&gt;Complex numbers&lt;/strong&gt;&lt;/p&gt;&lt;table&gt;&lt;tbody&gt;&lt;tr&gt;&lt;th&gt;MATLAB/Octave&lt;/th&gt;&lt;th&gt;Python&lt;/th&gt;&lt;th&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;i&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; cmath,numpy"&gt;z = 1j&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Imaginary unit&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;z = 3+4i&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python"&gt;z = 3+4j&lt;/tt&gt;&amp;nbsp;&lt;span class="alt"&gt;or&lt;/span&gt;&amp;nbsp;&lt;tt title="Python"&gt;z = complex(3,4)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;A complex number, $3+4i$&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;abs(z)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; cmath"&gt;abs(3+4j)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Absolute value (modulus)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;real(z)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python"&gt;z.real&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Real part&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;imag(z)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python"&gt;z.imag&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Imaginary part&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;arg(z)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;Argument&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;conj(z)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python"&gt;z.conj(); z.conjugate()&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Complex conjugate&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;p&gt;&lt;strong&gt;Trigonometry&lt;/strong&gt;&lt;/p&gt;&lt;table&gt;&lt;tbody&gt;&lt;tr&gt;&lt;th&gt;MATLAB/Octave&lt;/th&gt;&lt;th&gt;Python&lt;/th&gt;&lt;th&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;atan(a,b)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; math"&gt;atan2(b,a)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Arctangent, $\arctan(b/a)$&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python"&gt;hypot(x,y)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Hypotenus; Euclidean distance&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;p&gt;&lt;strong&gt;Generate random numbers&lt;/strong&gt;&lt;/p&gt;&lt;table&gt;&lt;tbody&gt;&lt;tr&gt;&lt;th&gt;MATLAB/Octave&lt;/th&gt;&lt;th&gt;Python&lt;/th&gt;&lt;th&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;rand(1,10)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy.random"&gt;random.random((10,))&lt;/tt&gt;&lt;br /&gt;&lt;tt title="Python; NumPy.random"&gt;random.uniform((10,))&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Uniform distribution&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;2+5*rand(1,10)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;random.uniform(2,7,(10,))&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Uniform: Numbers between 2 and 7&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;rand(6)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;random.uniform(0,1,(6,6))&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Uniform: 6,6 array&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;randn(1,10)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;random.standard_normal((10,))&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Normal distribution&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;p&gt;&lt;strong&gt;Vectors&lt;/strong&gt;&lt;/p&gt;&lt;table&gt;&lt;tbody&gt;&lt;tr&gt;&lt;th&gt;MATLAB/Octave&lt;/th&gt;&lt;th&gt;Python&lt;/th&gt;&lt;th&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;a=[2 3 4 5];&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;a=array([2,3,4,5])&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Row vector, $1 \times n$-matrix&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;adash=[2 3 4 5]';&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;array([2,3,4,5])[:,NewAxis]&lt;/tt&gt;&lt;br /&gt;&lt;tt title="Python; NumPy"&gt;array([2,3,4,5]).reshape(-1,1)&lt;/tt&gt;&lt;br /&gt;&lt;tt title="Python; NumPy"&gt;r_[1:10,'c']&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Column vector, $m \times 1$-matrix&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div&gt;&lt;p&gt;&lt;strong&gt;Sequences&lt;/strong&gt;&lt;/p&gt;&lt;table&gt;&lt;tbody&gt;&lt;tr&gt;&lt;th&gt;MATLAB/Octave&lt;/th&gt;&lt;th&gt;Python&lt;/th&gt;&lt;th&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;1:10&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;arange(1,11, dtype=Float)&lt;/tt&gt;&lt;br /&gt;&lt;tt title="Python"&gt;range(1,11)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;1,2,3, ... ,10&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;0:9&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;arange(10.)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;0.0,1.0,2.0, ... ,9.0&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;1:3:10&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;arange(1,11,3)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;1,4,7,10&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;10:-1:1&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;arange(10,0,-1)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;10,9,8, ... ,1&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;10:-3:1&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;arange(10,0,-3)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;10,7,4,1&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;linspace(1,10,7)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;linspace(1,10,7)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Linearly spaced vector of n=7 points&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;reverse(a)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;a[::-1]&lt;/tt&gt;&amp;nbsp;&lt;span class="alt"&gt;or&lt;/span&gt;&lt;/td&gt;&lt;td&gt;Reverse&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;a(:) = 3&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;a.fill(3), a[:] = 3&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Set all values to same scalar value&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;p&gt;&lt;strong&gt;Concatenation (vectors)&lt;/strong&gt;&lt;/p&gt;&lt;table&gt;&lt;tbody&gt;&lt;tr&gt;&lt;th&gt;MATLAB/Octave&lt;/th&gt;&lt;th&gt;Python&lt;/th&gt;&lt;th&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;[a a]&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;concatenate((a,a))&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Concatenate two vectors&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;[1:4 a]&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;concatenate((range(1,5),a), axis=1)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;p&gt;&lt;strong&gt;Repeating&lt;/strong&gt;&lt;/p&gt;&lt;table&gt;&lt;tbody&gt;&lt;tr&gt;&lt;th&gt;MATLAB/Octave&lt;/th&gt;&lt;th&gt;Python&lt;/th&gt;&lt;th&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;[a a]&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;concatenate((a,a))&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;1 2 3, 1 2 3&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;a.repeat(3)&lt;/tt&gt;&amp;nbsp;&lt;span class="alt"&gt;or&lt;/span&gt;&lt;/td&gt;&lt;td&gt;1 1 1, 2 2 2, 3 3 3&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;a.repeat(a)&lt;/tt&gt;&amp;nbsp;&lt;span class="alt"&gt;or&lt;/span&gt;&lt;/td&gt;&lt;td&gt;1, 2 2, 3 3 3&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;p&gt;&lt;strong&gt;Miss those elements out&lt;/strong&gt;&lt;/p&gt;&lt;table&gt;&lt;tbody&gt;&lt;tr&gt;&lt;th&gt;MATLAB/Octave&lt;/th&gt;&lt;th&gt;Python&lt;/th&gt;&lt;th&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;a(2:end)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python"&gt;a[1:]&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;miss the first element&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;a([1:9])&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;miss the tenth element&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;a(end)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python"&gt;a[-1]&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;last element&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;a(end-1:end)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python"&gt;a[-2:]&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;last two elements&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;p&gt;&lt;strong&gt;Maximum and minimum&lt;/strong&gt;&lt;/p&gt;&lt;table&gt;&lt;tbody&gt;&lt;tr&gt;&lt;th&gt;MATLAB/Octave&lt;/th&gt;&lt;th&gt;Python&lt;/th&gt;&lt;th&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;max(a,b)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;maximum(a,b)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;pairwise max&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;max([a b])&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;concatenate((a,b)).max()&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;max of all values in two vectors&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;[v,i] = max(a)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;v,i = a.max(0),a.argmax(0)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;p&gt;&lt;strong&gt;Vector multiplication&lt;/strong&gt;&lt;/p&gt;&lt;table&gt;&lt;tbody&gt;&lt;tr&gt;&lt;th&gt;MATLAB/Octave&lt;/th&gt;&lt;th&gt;Python&lt;/th&gt;&lt;th&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;a.*a&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;a*a&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Multiply two vectors&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;dot(u,v)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python"&gt;dot(u,v)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Vector dot product, $u \cdot v$&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;p&gt;&lt;strong&gt;Matrices&lt;/strong&gt;&lt;/p&gt;&lt;table&gt;&lt;tbody&gt;&lt;tr&gt;&lt;th&gt;MATLAB/Octave&lt;/th&gt;&lt;th&gt;Python&lt;/th&gt;&lt;th&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;a = [2 3;4 5]&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python"&gt;a = array([[2,3],[4,5]])&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Define a matrix&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div&gt;&lt;p&gt;&lt;strong&gt;Concatenation (matrices); rbind and cbind&lt;/strong&gt;&lt;/p&gt;&lt;table&gt;&lt;tbody&gt;&lt;tr&gt;&lt;th&gt;MATLAB/Octave&lt;/th&gt;&lt;th&gt;Python&lt;/th&gt;&lt;th&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;[a ; b]&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python"&gt;concatenate((a,b), axis=0)&lt;/tt&gt;&lt;br /&gt;&lt;tt title="Python"&gt;vstack((a,b))&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Bind rows&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;[a , b]&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python"&gt;concatenate((a,b), axis=1)&lt;/tt&gt;&lt;br /&gt;&lt;tt title="Python"&gt;hstack((a,b))&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Bind columns&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python"&gt;concatenate((a,b), axis=2)&lt;/tt&gt;&lt;br /&gt;&lt;tt title="Python"&gt;dstack((a,b))&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Bind slices (three-way arrays)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;[a(:), b(:)]&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python"&gt;concatenate((a,b), axis=None)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Concatenate matrices into one vector&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;[1:4 ; 1:4]&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;concatenate((r_[1:5],r_[1:5])).reshape(2,-1)&lt;/tt&gt;&lt;br /&gt;&lt;tt title="Python; NumPy"&gt;vstack((r_[1:5],r_[1:5]))&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Bind rows (from vectors)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;[1:4 ; 1:4]'&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;Bind columns (from vectors)&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;p&gt;&lt;strong&gt;Array creation&lt;/strong&gt;&lt;/p&gt;&lt;table&gt;&lt;tbody&gt;&lt;tr&gt;&lt;th&gt;MATLAB/Octave&lt;/th&gt;&lt;th&gt;Python&lt;/th&gt;&lt;th&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;zeros(3,5)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;zeros((3,5),Float)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;0 filled array&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;zeros((3,5))&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;0 filled array of integers&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;ones(3,5)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;ones((3,5),Float)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;1 filled array&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;ones(3,5)*9&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;Any number filled array&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;eye(3)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;identity(3)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Identity matrix&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;diag([4 5 6])&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;diag((4,5,6))&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Diagonal&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;magic(3)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;Magic squares; Lo Shu&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;a = empty((3,3))&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Empty array&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;p&gt;&lt;strong&gt;Reshape and flatten matrices&lt;/strong&gt;&lt;/p&gt;&lt;table&gt;&lt;tbody&gt;&lt;tr&gt;&lt;th&gt;MATLAB/Octave&lt;/th&gt;&lt;th&gt;Python&lt;/th&gt;&lt;th&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;reshape(1:6,3,2)';&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;arange(1,7).reshape(2,-1)&lt;/tt&gt;&lt;br /&gt;&lt;tt title="Python; numarray"&gt;a.setshape(2,3)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Reshaping (rows first)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;reshape(1:6,2,3);&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;arange(1,7).reshape(-1,2).transpose()&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Reshaping (columns first)&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;a'(:)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;a.flatten()&lt;/tt&gt;&amp;nbsp;&lt;span class="alt"&gt;or&lt;/span&gt;&lt;/td&gt;&lt;td&gt;Flatten to vector (by rows, like comics)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;a(:)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;a.flatten(1)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Flatten to vector (by columns)&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;vech(a)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;Flatten upper triangle (by columns)&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;p&gt;&lt;strong&gt;Shared data (slicing)&lt;/strong&gt;&lt;/p&gt;&lt;table&gt;&lt;tbody&gt;&lt;tr&gt;&lt;th&gt;MATLAB/Octave&lt;/th&gt;&lt;th&gt;Python&lt;/th&gt;&lt;th&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;b = a&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python"&gt;b = a.copy()&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Copy of a&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;p&gt;&lt;strong&gt;Indexing and accessing elements (Python: slicing)&lt;/strong&gt;&lt;/p&gt;&lt;table&gt;&lt;tbody&gt;&lt;tr&gt;&lt;th&gt;MATLAB/Octave&lt;/th&gt;&lt;th&gt;Python&lt;/th&gt;&lt;th&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;a = [ 11 12 13 14 ...&lt;/tt&gt;&lt;br /&gt;&lt;tt title="matlab"&gt;21 22 23 24 ...&lt;/tt&gt;&lt;br /&gt;&lt;tt title="matlab"&gt;31 32 33 34 ]&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python"&gt;a = array([[ 11, 12, 13, 14 ],&lt;/tt&gt;&lt;br /&gt;&lt;tt title="Python"&gt;[ 21, 22, 23, 24 ],&lt;/tt&gt;&lt;br /&gt;&lt;tt title="Python"&gt;[ 31, 32, 33, 34 ]])&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Input is a 3,4 array&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;a(2,3)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python"&gt;a[1,2]&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Element 2,3 (row,col)&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;a(1,:)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python"&gt;a[0,]&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;First row&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;a(:,1)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python"&gt;a[:,0]&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;First column&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;a([1 3],[1 4]);&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;a.take([0,2]).take([0,3], axis=1)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Array as indices&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;a(2:end,:)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python"&gt;a[1:,]&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;All, except first row&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;a(end-1:end,:)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python"&gt;a[-2:,]&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Last two rows&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;a(1:2:end,:)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python"&gt;a[::2,:]&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Strides: Every other row&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python"&gt;a[...,2]&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Third in last dimension (axis)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;a(:,[1 3 4])&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;a.take([0,2,3],axis=1)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Remove one column&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;a.diagonal(offset=0)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Diagonal&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;p&gt;&lt;strong&gt;Assignment&lt;/strong&gt;&lt;/p&gt;&lt;table&gt;&lt;tbody&gt;&lt;tr&gt;&lt;th&gt;MATLAB/Octave&lt;/th&gt;&lt;th&gt;Python&lt;/th&gt;&lt;th&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;a(:,1) = 99&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python"&gt;a[:,0] = 99&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;a(:,1) = [99 98 97]'&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python"&gt;a[:,0] = array([99,98,97])&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;a(a&amp;gt;90) = 90;&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;(a&amp;gt;90).choose(a,90)&lt;/tt&gt;&lt;br /&gt;&lt;tt title="Python; NumPy"&gt;a.clip(min=None, max=90)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Clipping: Replace all elements over 90&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;a.clip(min=2, max=5)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Clip upper and lower values&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;p&gt;&lt;strong&gt;Transpose and inverse&lt;/strong&gt;&lt;/p&gt;&lt;table&gt;&lt;tbody&gt;&lt;tr&gt;&lt;th&gt;MATLAB/Octave&lt;/th&gt;&lt;th&gt;Python&lt;/th&gt;&lt;th&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;a'&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;a.conj().transpose()&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Transpose&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;a.'&lt;/tt&gt;&amp;nbsp;&lt;span class="alt"&gt;or&lt;/span&gt;&amp;nbsp;&lt;tt title="matlab"&gt;transpose(a)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;a.transpose()&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Non-conjugate transpose&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;det(a)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy.linalg"&gt;linalg.det(a)&lt;/tt&gt;&amp;nbsp;&lt;span class="alt"&gt;or&lt;/span&gt;&lt;/td&gt;&lt;td&gt;Determinant&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;inv(a)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy.linalg"&gt;linalg.inv(a)&lt;/tt&gt;&amp;nbsp;&lt;span class="alt"&gt;or&lt;/span&gt;&lt;/td&gt;&lt;td&gt;Inverse&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;pinv(a)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy.linalg"&gt;linalg.pinv(a)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Pseudo-inverse&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;norm(a)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; matplotlib.mlab"&gt;norm(a)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Norms&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;eig(a)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy.linalg"&gt;linalg.eig(a)[0]&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Eigenvalues&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;svd(a)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy.linalg"&gt;linalg.svd(a)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Singular values&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;chol(a)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy.linalg"&gt;linalg.cholesky(a)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Cholesky factorization&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;[v,l] = eig(a)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy.linalg"&gt;linalg.eig(a)[1]&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Eigenvectors&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;rank(a)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;rank(a)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Rank&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;p&gt;&lt;strong&gt;Sum&lt;/strong&gt;&lt;/p&gt;&lt;table&gt;&lt;tbody&gt;&lt;tr&gt;&lt;th&gt;MATLAB/Octave&lt;/th&gt;&lt;th&gt;Python&lt;/th&gt;&lt;th&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;sum(a)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;a.sum(axis=0)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Sum of each column&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;sum(a')&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;a.sum(axis=1)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Sum of each row&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;sum(sum(a))&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;a.sum()&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Sum of all elements&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;a.trace(offset=0)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Sum along diagonal&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;cumsum(a)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;a.cumsum(axis=0)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Cumulative sum (columns)&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;p&gt;&lt;strong&gt;Sorting&lt;/strong&gt;&lt;/p&gt;&lt;table&gt;&lt;tbody&gt;&lt;tr&gt;&lt;th&gt;MATLAB/Octave&lt;/th&gt;&lt;th&gt;Python&lt;/th&gt;&lt;th&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;a = [ 4 3 2 ; 2 8 6 ; 1 4 7 ]&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python"&gt;a = array([[4,3,2],[2,8,6],[1,4,7]])&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Example data&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;sort(a(:))&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;a.ravel().sort()&lt;/tt&gt;&amp;nbsp;&lt;span class="alt"&gt;or&lt;/span&gt;&lt;/td&gt;&lt;td&gt;Flat and sorted&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;sort(a)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;a.sort(axis=0)&lt;/tt&gt;&amp;nbsp;&lt;span class="alt"&gt;or&lt;/span&gt;&amp;nbsp;&lt;tt title="Python; NumPy,MLab"&gt;msort(a)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Sort each column&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;sort(a')'&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;a.sort(axis=1)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Sort each row&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;sortrows(a,1)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;a[a[:,0].argsort(),]&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Sort rows (by first row)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;a.ravel().argsort()&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Sort, return indices&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;a.argsort(axis=0)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Sort each column, return indices&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;a.argsort(axis=1)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Sort each row, return indices&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;p&gt;&lt;strong&gt;Maximum and minimum&lt;/strong&gt;&lt;/p&gt;&lt;table&gt;&lt;tbody&gt;&lt;tr&gt;&lt;th&gt;MATLAB/Octave&lt;/th&gt;&lt;th&gt;Python&lt;/th&gt;&lt;th&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;max(a)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;a.max(0)&lt;/tt&gt;&amp;nbsp;&lt;span class="alt"&gt;or&lt;/span&gt;&amp;nbsp;&lt;tt title="Python; matplotlib.pylab"&gt;amax(a [,axis=0])&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;max in each column&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;max(a')&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;a.max(1)&lt;/tt&gt;&amp;nbsp;&lt;span class="alt"&gt;or&lt;/span&gt;&amp;nbsp;&lt;tt title="Python; matplotlib.pylab"&gt;amax(a, axis=1)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;max in each row&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;max(max(a))&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;a.max()&lt;/tt&gt;&amp;nbsp;&lt;span class="alt"&gt;or&lt;/span&gt;&lt;/td&gt;&lt;td&gt;max in array&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;[v i] = max(a)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;return indices, i&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;max(b,c)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;maximum(b,c)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;pairwise max&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;cummax(a)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;a.ptp(); a.ptp(0)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;max-to-min range&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;p&gt;&lt;strong&gt;Matrix manipulation&lt;/strong&gt;&lt;/p&gt;&lt;table&gt;&lt;tbody&gt;&lt;tr&gt;&lt;th&gt;MATLAB/Octave&lt;/th&gt;&lt;th&gt;Python&lt;/th&gt;&lt;th&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;fliplr(a)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;fliplr(a)&lt;/tt&gt;&amp;nbsp;&lt;span class="alt"&gt;or&lt;/span&gt;&amp;nbsp;&lt;tt title="Python"&gt;a[:,::-1]&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Flip left-right&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;flipud(a)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;flipud(a)&lt;/tt&gt;&amp;nbsp;&lt;span class="alt"&gt;or&lt;/span&gt;&amp;nbsp;&lt;tt title="Python"&gt;a[::-1,]&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Flip up-down&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;rot90(a)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;rot90(a)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Rotate 90 degrees&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;repmat(a,2,3)&lt;/tt&gt;&lt;br /&gt;&lt;span class="clone"&gt;&lt;tt title="Octave"&gt;kron(ones(2,3),a)&lt;/tt&gt;&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; scipy.linalg"&gt;kron(ones((2,3)),a)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Repeat matrix: [ a a a ; a a a ]&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;triu(a)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;triu(a)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Triangular, upper&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;tril(a)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;tril(a)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Triangular, lower&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;p&gt;&lt;strong&gt;Equivalents to "size"&lt;/strong&gt;&lt;/p&gt;&lt;table&gt;&lt;tbody&gt;&lt;tr&gt;&lt;th&gt;MATLAB/Octave&lt;/th&gt;&lt;th&gt;Python&lt;/th&gt;&lt;th&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;size(a)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy,Numeric"&gt;a.shape&lt;/tt&gt;&amp;nbsp;&lt;span class="alt"&gt;or&lt;/span&gt;&amp;nbsp;&lt;tt title="Python; numarray"&gt;a.getshape()&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Matrix dimensions&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;size(a,2)&lt;/tt&gt;&amp;nbsp;&lt;span class="alt"&gt;or&lt;/span&gt;&amp;nbsp;&lt;tt title="matlab"&gt;length(a)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy,Numeric"&gt;a.shape[1]&lt;/tt&gt;&amp;nbsp;&lt;span class="alt"&gt;or&lt;/span&gt;&amp;nbsp;&lt;tt title="Python; NumPy,Numeric"&gt;size(a, axis=1)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Number of columns&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;length(a(:))&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python"&gt;a.size&lt;/tt&gt;&amp;nbsp;&lt;span class="alt"&gt;or&lt;/span&gt;&amp;nbsp;&lt;tt title="Python"&gt;size(a[, axis=None])&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Number of elements&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;ndims(a)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;a.ndim&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Number of dimensions&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;a.nbytes&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Number of bytes used in memory&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;p&gt;&lt;strong&gt;Matrix- and elementwise- multiplication&lt;/strong&gt;&lt;/p&gt;&lt;table&gt;&lt;tbody&gt;&lt;tr&gt;&lt;th&gt;MATLAB/Octave&lt;/th&gt;&lt;th&gt;Python&lt;/th&gt;&lt;th&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;a .* b&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python"&gt;a * b&lt;/tt&gt;&amp;nbsp;&lt;span class="alt"&gt;or&lt;/span&gt;&amp;nbsp;&lt;tt title="Python; NumPy"&gt;multiply(a,b)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Elementwise operations&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;a * b&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;matrixmultiply(a,b)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Matrix product (dot product)&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;inner(a,b)&lt;/tt&gt;&amp;nbsp;&lt;span class="alt"&gt;or&lt;/span&gt;&lt;/td&gt;&lt;td&gt;Inner matrix vector multiplication $a\cdot b'$&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;outer(a,b)&lt;/tt&gt;&amp;nbsp;&lt;span class="alt"&gt;or&lt;/span&gt;&lt;/td&gt;&lt;td&gt;Outer product&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;kron(a,b)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; scipy.linalg"&gt;kron(a,b)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Kronecker product&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;a / b&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;Matrix division, $b{\cdot}a^{-1}$&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;a \ b&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy.linalg"&gt;linalg.solve(a,b)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Left matrix division, $b^{-1}{\cdot}a$ \newline (solve linear equations)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;vdot(a,b)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Vector dot product&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;cross(a,b)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Cross product&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;p&gt;&lt;strong&gt;Find; conditional indexing&lt;/strong&gt;&lt;/p&gt;&lt;table&gt;&lt;tbody&gt;&lt;tr&gt;&lt;th&gt;MATLAB/Octave&lt;/th&gt;&lt;th&gt;Python&lt;/th&gt;&lt;th&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;find(a)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;a.ravel().nonzero()&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Non-zero elements, indices&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;[i j] = find(a)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;(i,j) = a.nonzero()&lt;/tt&gt;&lt;br /&gt;&lt;tt title="Python; NumPy"&gt;(i,j) = where(a!=0)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Non-zero elements, array indices&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;[i j v] = find(a)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;v = a.compress((a!=0).flat)&lt;/tt&gt;&lt;br /&gt;&lt;tt title="Python; NumPy"&gt;v = extract(a!=0,a)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Vector of non-zero values&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;find(a&amp;gt;5.5)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;(a&amp;gt;5.5).nonzero()&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Condition, indices&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;a.compress((a&amp;gt;5.5).flat)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Return values&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;a .* (a&amp;gt;5.5)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;where(a&amp;gt;5.5,0,a)&lt;/tt&gt;&amp;nbsp;&lt;span class="alt"&gt;or&lt;/span&gt;&amp;nbsp;&lt;tt title="Python; NumPy"&gt;a * (a&amp;gt;5.5)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Zero out elements above 5.5&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;a.put(2,indices)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Replace values&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;p&gt;&lt;strong&gt;Multi-way arrays&lt;/strong&gt;&lt;/p&gt;&lt;table&gt;&lt;tbody&gt;&lt;tr&gt;&lt;th&gt;MATLAB/Octave&lt;/th&gt;&lt;th&gt;Python&lt;/th&gt;&lt;th&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;a = cat(3, [1 2; 1 2],[3 4; 3 4]);&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;a = array([[[1,2],[1,2]], [[3,4],[3,4]]])&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Define a 3-way array&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;a(1,:,:)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;a[0,...]&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;p&gt;&lt;strong&gt;File input and output&lt;/strong&gt;&lt;/p&gt;&lt;table&gt;&lt;tbody&gt;&lt;tr&gt;&lt;th&gt;MATLAB/Octave&lt;/th&gt;&lt;th&gt;Python&lt;/th&gt;&lt;th&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;f = load('data.txt')&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;f = fromfile("data.txt")&lt;/tt&gt;&lt;br /&gt;&lt;tt title="Python; matplotlib.pylab"&gt;f = load("data.txt")&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Reading from a file (2d)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;f = load('data.txt')&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; matplotlib.pylab"&gt;f = load("data.txt")&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Reading from a file (2d)&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;x = dlmread('data.csv', ';')&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; matplotlib.pylab"&gt;f = load('data.csv', delimiter=';')&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Reading fram a CSV file (2d)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;save -ascii data.txt f&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; matplotlib.pylab"&gt;save('data.csv', f, fmt='%.6f', delimiter=';')&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Writing to a file (2d)&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;f.tofile(file='data.csv', format='%.6f', sep=';')&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Writing to a file (1d)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;f = fromfile(file='data.csv', sep=';')&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Reading from a file (1d)&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;p&gt;&lt;strong&gt;Plotting&lt;/strong&gt;&lt;/p&gt;&lt;div&gt;&lt;p&gt;&lt;strong&gt;Basic x-y plots&lt;/strong&gt;&lt;/p&gt;&lt;table&gt;&lt;tbody&gt;&lt;tr&gt;&lt;th&gt;MATLAB/Octave&lt;/th&gt;&lt;th&gt;Python&lt;/th&gt;&lt;th&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;plot(a)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python"&gt;plot(a)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;1d line plot&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;plot(x(:,1),x(:,2),'o')&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python"&gt;plot(x[:,0],x[:,1],'o')&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;2d scatter plot&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;plot(x1,y1, x2,y2)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python"&gt;plot(x1,y1,'bo', x2,y2,'go')&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Two graphs in one plot&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;plot(x1,y1)&lt;/tt&gt;&lt;br /&gt;&lt;tt title="matlab"&gt;hold on&lt;/tt&gt;&lt;br /&gt;&lt;tt title="matlab"&gt;plot(x2,y2)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python"&gt;plot(x1,y1,'o')&lt;/tt&gt;&lt;br /&gt;&lt;tt title="Python"&gt;plot(x2,y2,'o')&lt;/tt&gt;&lt;br /&gt;&lt;tt title="Python"&gt;show() # as normal&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Overplotting: Add new plots to current&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;subplot(211)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python"&gt;subplot(211)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;subplots&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;plot(x,y,'ro-')&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; matplotlib.pylab"&gt;plot(x,y,'ro-')&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Plotting symbols and color&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div&gt;&lt;p&gt;&lt;strong&gt;Axes and titles&lt;/strong&gt;&lt;/p&gt;&lt;table&gt;&lt;tbody&gt;&lt;tr&gt;&lt;th&gt;MATLAB/Octave&lt;/th&gt;&lt;th&gt;Python&lt;/th&gt;&lt;th&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;grid on&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; matplotlib.pylab"&gt;grid()&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Turn on grid lines&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;axis equal&lt;/tt&gt;&lt;br /&gt;&lt;span class="clone"&gt;&lt;tt title="Octave"&gt;axis('equal')&lt;/tt&gt;&lt;br /&gt;&lt;tt title="Octave"&gt;replot&lt;/tt&gt;&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; matplotlib.pylab"&gt;figure(figsize=(6,6))&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;1:1 aspect ratio&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;axis([ 0 10 0 5 ])&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; matplotlib.pylab"&gt;axis([ 0, 10, 0, 5 ])&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Set axes manually&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;title('title')&lt;/tt&gt;&lt;br /&gt;&lt;tt title="matlab"&gt;xlabel('x-axis')&lt;/tt&gt;&lt;br /&gt;&lt;tt title="matlab"&gt;ylabel('y-axis')&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;Axis labels and titles&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; matplotlib.pylab"&gt;text(2,25,'hello')&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Insert text&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;p&gt;&lt;strong&gt;Log plots&lt;/strong&gt;&lt;/p&gt;&lt;table&gt;&lt;tbody&gt;&lt;tr&gt;&lt;th&gt;MATLAB/Octave&lt;/th&gt;&lt;th&gt;Python&lt;/th&gt;&lt;th&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;semilogy(a)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; matplotlib.pylab"&gt;semilogy(a)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;logarithmic y-axis&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;semilogx(a)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; matplotlib.pylab"&gt;semilogx(a)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;logarithmic x-axis&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;loglog(a)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; matplotlib.pylab"&gt;loglog(a)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;logarithmic x and y axes&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;p&gt;&lt;strong&gt;Filled plots and bar plots&lt;/strong&gt;&lt;/p&gt;&lt;table&gt;&lt;tbody&gt;&lt;tr&gt;&lt;th&gt;MATLAB/Octave&lt;/th&gt;&lt;th&gt;Python&lt;/th&gt;&lt;th&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;fill(t,s,'b', t,c,'g')&lt;/tt&gt;&lt;br /&gt;&lt;span class="clone"&gt;&lt;tt title="Octave"&gt;% fill has a bug?&lt;/tt&gt;&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python"&gt;fill(t,s,'b', t,c,'g', alpha=0.2)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Filled plot&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;p&gt;&lt;strong&gt;Functions&lt;/strong&gt;&lt;/p&gt;&lt;table&gt;&lt;tbody&gt;&lt;tr&gt;&lt;th&gt;MATLAB/Octave&lt;/th&gt;&lt;th&gt;Python&lt;/th&gt;&lt;th&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;f = inline('sin(x/3) - cos(x/5)')&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;Defining functions&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;ezplot(f,[0,40])&lt;/tt&gt;&lt;br /&gt;&lt;tt title="matlab"&gt;fplot('sin(x/3) - cos(x/5)',[0,40])&lt;/tt&gt;&lt;br /&gt;&lt;span class="clone"&gt;&lt;tt title="Octave"&gt;% no ezplot&lt;/tt&gt;&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python"&gt;x = arrayrange(0,40,.5)&lt;/tt&gt;&lt;br /&gt;&lt;tt title="Python"&gt;y = sin(x/3) - cos(x/5)&lt;/tt&gt;&lt;br /&gt;&lt;tt title="Python"&gt;plot(x,y, 'o')&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Plot a function for given range&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;p&gt;&lt;strong&gt;Polar plots&lt;/strong&gt;&lt;/p&gt;&lt;table&gt;&lt;tbody&gt;&lt;tr&gt;&lt;th&gt;MATLAB/Octave&lt;/th&gt;&lt;th&gt;Python&lt;/th&gt;&lt;th&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;theta = 0:.001:2*pi;&lt;/tt&gt;&lt;br /&gt;&lt;tt title="matlab"&gt;r = sin(2*theta);&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python"&gt;theta = arange(0,2*pi,0.001)&lt;/tt&gt;&lt;br /&gt;&lt;tt title="Python"&gt;r = sin(2*theta)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;polar(theta, rho)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python"&gt;polar(theta, rho)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;p&gt;&lt;strong&gt;Histogram plots&lt;/strong&gt;&lt;/p&gt;&lt;table&gt;&lt;tbody&gt;&lt;tr&gt;&lt;th&gt;MATLAB/Octave&lt;/th&gt;&lt;th&gt;Python&lt;/th&gt;&lt;th&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;hist(randn(1000,1))&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;hist(randn(1000,1), -4:4)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;plot(sort(a))&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;p&gt;&lt;strong&gt;3d data&lt;/strong&gt;&lt;/p&gt;&lt;div&gt;&lt;p&gt;&lt;strong&gt;Contour and image plots&lt;/strong&gt;&lt;/p&gt;&lt;table&gt;&lt;tbody&gt;&lt;tr&gt;&lt;th&gt;MATLAB/Octave&lt;/th&gt;&lt;th&gt;Python&lt;/th&gt;&lt;th&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;contour(z)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python"&gt;levels, colls = contour(Z, V,&lt;/tt&gt;&lt;br /&gt;&lt;tt title="Python"&gt;origin='lower', extent=(-3,3,-3,3))&lt;/tt&gt;&lt;br /&gt;&lt;tt title="Python"&gt;clabel(colls, levels, inline=1,&lt;/tt&gt;&lt;br /&gt;&lt;tt title="Python"&gt;fmt='%1.1f', fontsize=10)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Contour plot&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;contourf(z); colormap(gray)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python"&gt;contourf(Z, V,&lt;/tt&gt;&lt;br /&gt;&lt;tt title="Python"&gt;cmap=cm.gray,&lt;/tt&gt;&lt;br /&gt;&lt;tt title="Python"&gt;origin='lower',&lt;/tt&gt;&lt;br /&gt;&lt;tt title="Python"&gt;extent=(-3,3,-3,3))&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Filled contour plot&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;image(z)&lt;/tt&gt;&lt;br /&gt;&lt;tt title="matlab"&gt;colormap(gray)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python"&gt;im = imshow(Z,&lt;/tt&gt;&lt;br /&gt;&lt;tt title="Python"&gt;interpolation='bilinear',&lt;/tt&gt;&lt;br /&gt;&lt;tt title="Python"&gt;origin='lower',&lt;/tt&gt;&lt;br /&gt;&lt;tt title="Python"&gt;extent=(-3,3,-3,3))&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Plot image data&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python"&gt;# imshow() and contour() as above&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Image with contours&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;quiver()&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; matplotlib.pylab"&gt;quiver()&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Direction field vectors&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;p&gt;&lt;strong&gt;Perspective plots of surfaces over the x-y plane&lt;/strong&gt;&lt;/p&gt;&lt;table&gt;&lt;tbody&gt;&lt;tr&gt;&lt;th&gt;MATLAB/Octave&lt;/th&gt;&lt;th&gt;Python&lt;/th&gt;&lt;th&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;n=-2:.1:2;&lt;/tt&gt;&lt;br /&gt;&lt;tt title="matlab"&gt;[x,y] = meshgrid(n,n);&lt;/tt&gt;&lt;br /&gt;&lt;tt title="matlab"&gt;z=x.*exp(-x.^2-y.^2);&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python"&gt;n=arrayrange(-2,2,.1)&lt;/tt&gt;&lt;br /&gt;&lt;tt title="Python"&gt;[x,y] = meshgrid(n,n)&lt;/tt&gt;&lt;br /&gt;&lt;tt title="Python"&gt;z = x*power(math.e,-x**2-y**2)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;mesh(z)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;Mesh plot&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;surf(x,y,z)&lt;/tt&gt;&amp;nbsp;&lt;span class="alt"&gt;or&lt;/span&gt;&amp;nbsp;&lt;tt title="matlab"&gt;surfl(x,y,z)&lt;/tt&gt;&lt;br /&gt;&lt;span class="clone"&gt;&lt;tt title="Octave"&gt;% no surfl()&lt;/tt&gt;&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;Surface plot&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;p&gt;&lt;strong&gt;Scatter (cloud) plots&lt;/strong&gt;&lt;/p&gt;&lt;table&gt;&lt;tbody&gt;&lt;tr&gt;&lt;th&gt;MATLAB/Octave&lt;/th&gt;&lt;th&gt;Python&lt;/th&gt;&lt;th&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;plot3(x,y,z,'k+')&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;3d scatter plot&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;p&gt;&lt;strong&gt;Save plot to a graphics file&lt;/strong&gt;&lt;/p&gt;&lt;table&gt;&lt;tbody&gt;&lt;tr&gt;&lt;th&gt;MATLAB/Octave&lt;/th&gt;&lt;th&gt;Python&lt;/th&gt;&lt;th&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;plot(1:10)&lt;/tt&gt;&lt;br /&gt;&lt;tt title="matlab"&gt;print -depsc2 foo.eps&lt;/tt&gt;&lt;br /&gt;&lt;span class="clone"&gt;&lt;tt title="Octave"&gt;gset output "foo.eps"&lt;/tt&gt;&lt;br /&gt;&lt;tt title="Octave"&gt;gset terminal postscript eps&lt;/tt&gt;&lt;br /&gt;&lt;tt title="Octave"&gt;plot(1:10)&lt;/tt&gt;&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; matplotlib.pylab"&gt;savefig('foo.eps')&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;PostScript&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; matplotlib.pylab"&gt;savefig('foo.pdf')&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;PDF&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; matplotlib.pylab"&gt;savefig('foo.svg')&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;SVG (vector graphics for www)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;print -dpng foo.png&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; matplotlib.pylab"&gt;savefig('foo.png')&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;PNG (raster graphics)&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;p&gt;&lt;strong&gt;Data analysis&lt;/strong&gt;&lt;/p&gt;&lt;div&gt;&lt;p&gt;&lt;strong&gt;Set membership operators&lt;/strong&gt;&lt;/p&gt;&lt;table&gt;&lt;tbody&gt;&lt;tr&gt;&lt;th&gt;MATLAB/Octave&lt;/th&gt;&lt;th&gt;Python&lt;/th&gt;&lt;th&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;a = [ 1 2 2 5 2 ];&lt;/tt&gt;&lt;br /&gt;&lt;tt title="matlab"&gt;b = [ 2 3 4 ];&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;a = array([1,2,2,5,2])&lt;/tt&gt;&lt;br /&gt;&lt;tt title="Python; NumPy"&gt;b = array([2,3,4])&lt;/tt&gt;&lt;br /&gt;&lt;tt title="Python"&gt;a = set([1,2,2,5,2])&lt;/tt&gt;&lt;br /&gt;&lt;tt title="Python"&gt;b = set([2,3,4])&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Create sets&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;unique(a)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;unique1d(a)&lt;/tt&gt;&lt;br /&gt;&lt;tt title="Python; NumPy"&gt;unique(a)&lt;/tt&gt;&lt;br /&gt;&lt;tt title="Python"&gt;set(a)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Set unique&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;union(a,b)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;union1d(a,b)&lt;/tt&gt;&lt;br /&gt;&lt;tt title="Python"&gt;a.union(b)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Set union&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;intersect(a,b)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;intersect1d(a)&lt;/tt&gt;&lt;br /&gt;&lt;tt title="Python"&gt;a.intersection(b)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Set intersection&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;setdiff(a,b)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;setdiff1d(a,b)&lt;/tt&gt;&lt;br /&gt;&lt;tt title="Python"&gt;a.difference(b)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Set difference&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;setxor(a,b)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;setxor1d(a,b)&lt;/tt&gt;&lt;br /&gt;&lt;tt title="Python"&gt;a.symmetric_difference(b)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Set exclusion&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;ismember(2,a)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python"&gt;2 in a&lt;/tt&gt;&lt;br /&gt;&lt;tt title="Python; NumPy"&gt;setmember1d(2,a)&lt;/tt&gt;&lt;br /&gt;&lt;tt title="Python"&gt;contains(a,2)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;True for set member&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;p&gt;&lt;strong&gt;Statistics&lt;/strong&gt;&lt;/p&gt;&lt;table&gt;&lt;tbody&gt;&lt;tr&gt;&lt;th&gt;MATLAB/Octave&lt;/th&gt;&lt;th&gt;Python&lt;/th&gt;&lt;th&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;mean(a)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;a.mean(axis=0)&lt;/tt&gt;&lt;br /&gt;&lt;tt title="Python; scipy.stats,MLab,pylab"&gt;mean(a [,axis=0])&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Average&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;median(a)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;median(a)&lt;/tt&gt;&amp;nbsp;&lt;span class="alt"&gt;or&lt;/span&gt;&amp;nbsp;&lt;tt title="Python; scipy.stats,MLab,pylab"&gt;median(a [,axis=0])&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Median&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;std(a)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;a.std(axis=0)&lt;/tt&gt;&amp;nbsp;&lt;span class="alt"&gt;or&lt;/span&gt;&amp;nbsp;&lt;tt title="Python; scipy.stats,MLab,pylab"&gt;std(a [,axis=0])&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Standard deviation&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;var(a)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;a.var(axis=0)&lt;/tt&gt;&amp;nbsp;&lt;span class="alt"&gt;or&lt;/span&gt;&amp;nbsp;&lt;tt title="Python; scipy.stats"&gt;var(a)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Variance&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;corr(x,y)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;correlate(x,y)&lt;/tt&gt;&amp;nbsp;&lt;span class="alt"&gt;or&lt;/span&gt;&amp;nbsp;&lt;tt title="Python; scipy.stats,MLab,pylab"&gt;corrcoef(x,y)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Correlation coefficient&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;cov(x,y)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; scipy.stats,MLab,pylab"&gt;cov(x,y)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Covariance&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;p&gt;&lt;strong&gt;Interpolation and regression&lt;/strong&gt;&lt;/p&gt;&lt;table&gt;&lt;tbody&gt;&lt;tr&gt;&lt;th&gt;MATLAB/Octave&lt;/th&gt;&lt;th&gt;Python&lt;/th&gt;&lt;th&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;z = polyval(polyfit(x,y,1),x)&lt;/tt&gt;&lt;br /&gt;&lt;tt title="matlab"&gt;plot(x,y,'o', x,z ,'-')&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python"&gt;(a,b) = polyfit(x,y,1)&lt;/tt&gt;&lt;br /&gt;&lt;tt title="Python"&gt;plot(x,y,'o', x,a*x+b,'-')&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Straight line fit&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;a = x\y&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy.linalg"&gt;linalg.lstsq(x,y)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Linear least squares $y = ax + b$&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;polyfit(x,y,3)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;polyfit(x,y,3)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Polynomial fit&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;p&gt;&lt;strong&gt;Non-linear methods&lt;/strong&gt;&lt;/p&gt;&lt;div&gt;&lt;p&gt;&lt;strong&gt;Polynomials, root finding&lt;/strong&gt;&lt;/p&gt;&lt;table&gt;&lt;tbody&gt;&lt;tr&gt;&lt;th&gt;MATLAB/Octave&lt;/th&gt;&lt;th&gt;Python&lt;/th&gt;&lt;th&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;poly()&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Polynomial&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;roots([1 -1 -1])&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;roots()&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Find zeros of polynomial&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;f = inline('1/x - (x-1)')&lt;/tt&gt;&lt;br /&gt;&lt;tt title="matlab"&gt;fzero(f,1)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;Find a zero near $x = 1$&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab; Symbolic,Maple"&gt;solve('1/x = x-1')&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;Solve symbolic equations&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;polyval([1 2 1 2],1:10)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; matplotlib.pylab"&gt;polyval(array([1,2,1,2]),arange(1,11))&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Evaluate polynomial&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;p&gt;&lt;strong&gt;Differential equations&lt;/strong&gt;&lt;/p&gt;&lt;table&gt;&lt;tbody&gt;&lt;tr&gt;&lt;th&gt;MATLAB/Octave&lt;/th&gt;&lt;th&gt;Python&lt;/th&gt;&lt;th&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;diff(a)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;diff(x, n=1, axis=0)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Discrete difference function and approximate derivative&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;Solve differential equations&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;p&gt;&lt;strong&gt;Fourier analysis&lt;/strong&gt;&lt;/p&gt;&lt;table&gt;&lt;tbody&gt;&lt;tr&gt;&lt;th&gt;MATLAB/Octave&lt;/th&gt;&lt;th&gt;Python&lt;/th&gt;&lt;th&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;fft(a)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy.dft"&gt;fft(a)&lt;/tt&gt;&amp;nbsp;&lt;span class="alt"&gt;or&lt;/span&gt;&lt;/td&gt;&lt;td&gt;Fast fourier transform&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;ifft(a)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy.dft"&gt;ifft(a)&lt;/tt&gt;&amp;nbsp;&lt;span class="alt"&gt;or&lt;/span&gt;&lt;/td&gt;&lt;td&gt;Inverse fourier transform&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; NumPy"&gt;convolve(x,y)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Linear convolution&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;p&gt;&lt;strong&gt;Symbolic algebra; calculus&lt;/strong&gt;&lt;/p&gt;&lt;table&gt;&lt;tbody&gt;&lt;tr&gt;&lt;th&gt;MATLAB/Octave&lt;/th&gt;&lt;th&gt;Python&lt;/th&gt;&lt;th&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;factor()&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;Factorization&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;p&gt;&lt;strong&gt;Programming&lt;/strong&gt;&lt;/p&gt;&lt;table&gt;&lt;tbody&gt;&lt;tr&gt;&lt;th&gt;MATLAB/Octave&lt;/th&gt;&lt;th&gt;Python&lt;/th&gt;&lt;th&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;.m&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python"&gt;.py&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Script file extension&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;%&lt;/tt&gt;&lt;br /&gt;&lt;span class="clone"&gt;&lt;tt title="Octave"&gt;%&lt;/tt&gt;&amp;nbsp;&lt;span class="alt"&gt;or&lt;/span&gt;&amp;nbsp;&lt;tt title="Octave"&gt;#&lt;/tt&gt;&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python"&gt;#&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Comment symbol (rest of line)&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;% must be in MATLABPATH&lt;/tt&gt;&lt;br /&gt;&lt;span class="clone"&gt;&lt;tt title="Octave"&gt;% must be in LOADPATH&lt;/tt&gt;&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python"&gt;from pylab import *&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Import library functions&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;string='a=234';&lt;/tt&gt;&lt;br /&gt;&lt;tt title="matlab"&gt;eval(string)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python"&gt;string="a=234"&lt;/tt&gt;&lt;br /&gt;&lt;tt title="Python"&gt;eval(string)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Eval&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div&gt;&lt;p&gt;&lt;strong&gt;Loops&lt;/strong&gt;&lt;/p&gt;&lt;table&gt;&lt;tbody&gt;&lt;tr&gt;&lt;th&gt;MATLAB/Octave&lt;/th&gt;&lt;th&gt;Python&lt;/th&gt;&lt;th&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;for i=1:5; disp(i); end&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python"&gt;for i in range(1,6): print(i)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;for-statement&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;for i=1:5&lt;/tt&gt;&lt;br /&gt;&lt;tt title="matlab"&gt;disp(i)&lt;/tt&gt;&lt;br /&gt;&lt;tt title="matlab"&gt;disp(i*2)&lt;/tt&gt;&lt;br /&gt;&lt;tt title="matlab"&gt;end&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python"&gt;for i in range(1,6):&lt;/tt&gt;&lt;br /&gt;&lt;tt title="Python"&gt;print(i)&lt;/tt&gt;&lt;br /&gt;&lt;tt title="Python"&gt;print(i*2)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Multiline for statements&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;p&gt;&lt;strong&gt;Conditionals&lt;/strong&gt;&lt;/p&gt;&lt;table&gt;&lt;tbody&gt;&lt;tr&gt;&lt;th&gt;MATLAB/Octave&lt;/th&gt;&lt;th&gt;Python&lt;/th&gt;&lt;th&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;if 1&amp;gt;0 a=100; end&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python"&gt;if 1&amp;gt;0: a=100&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;if-statement&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;if 1&amp;gt;0 a=100; else a=0; end&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;if-else-statement&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;p&gt;&lt;strong&gt;Debugging&lt;/strong&gt;&lt;/p&gt;&lt;table&gt;&lt;tbody&gt;&lt;tr&gt;&lt;th&gt;MATLAB/Octave&lt;/th&gt;&lt;th&gt;Python&lt;/th&gt;&lt;th&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;ans&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;Most recent evaluated expression&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;whos&lt;/tt&gt;&amp;nbsp;&lt;span class="alt"&gt;or&lt;/span&gt;&amp;nbsp;&lt;tt title="matlab"&gt;who&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;List variables loaded into memory&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;clear x&lt;/tt&gt;&amp;nbsp;&lt;span class="alt"&gt;or&lt;/span&gt;&amp;nbsp;&lt;tt title="matlab"&gt;clear [all]&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;Clear variable $x$ from memory&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;disp(a)&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python"&gt;print a&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Print&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;p&gt;&lt;strong&gt;Working directory and OS&lt;/strong&gt;&lt;/p&gt;&lt;table&gt;&lt;tbody&gt;&lt;tr&gt;&lt;th&gt;MATLAB/Octave&lt;/th&gt;&lt;th&gt;Python&lt;/th&gt;&lt;th&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;dir&lt;/tt&gt;&amp;nbsp;&lt;span class="alt"&gt;or&lt;/span&gt;&amp;nbsp;&lt;tt title="matlab"&gt;ls&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; os"&gt;os.listdir(".")&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;List files in directory&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;what&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; grep"&gt;grep.grep("*.py")&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;List script files in directory&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;pwd&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; os"&gt;os.getcwd()&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Displays the current working directory&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;tt title="matlab"&gt;cd foo&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python; os"&gt;os.chdir('foo')&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Change working directory&lt;/td&gt;&lt;/tr&gt;&lt;tr class="odd"&gt;&lt;td&gt;&lt;tt title="matlab"&gt;!notepad&lt;/tt&gt;&lt;br /&gt;&lt;span class="clone"&gt;&lt;tt title="Octave"&gt;system("notepad")&lt;/tt&gt;&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;tt title="Python"&gt;os.system('notepad')&lt;/tt&gt;&lt;br /&gt;&lt;tt title="Python"&gt;os.popen('notepad')&lt;/tt&gt;&lt;/td&gt;&lt;td&gt;Invoke a System Command&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;/div&gt;&lt;img src="http://www.cnblogs.com/x1957/aggbug/2526118.html?type=0" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/x1957/archive/2012/05/30/2526118.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/chiboo/archive/2012/05/30/2526116.html</id><title type="text">运行项目出现 java.lang.NoClassDefFoundError 解决方法</title><summary type="text"/><published>2012-05-30T05:13:00Z</published><updated>2012-05-30T05:13:00Z</updated><author><name>chiboo</name><uri>http://www.cnblogs.com/chiboo/</uri></author><link rel="alternate" href="http://www.cnblogs.com/chiboo/archive/2012/05/30/2526116.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/chiboo/archive/2012/05/30/2526116.html"/><content type="html">&lt;p&gt;刚更新了sdk 和adt至最新版本，结果当我有运用第三方jar包，运行项目就会报&amp;nbsp;java.lang.NoClassDefFoundError错误，指明就找不到jar包里的文件。以前这种情况是没出现的。问题就是sdk和adt更新的缘故。尝试了各种解决方法，最后找到了key：项目-&amp;gt;Preferences-&amp;gt;Java Build Path-&amp;gt; Order and Export 勾选你导入的第三方jar包。运用第三方jar包最好，在项目里建个文件夹命名外libs，把jar包都放置在此。&lt;/p&gt;&lt;img src="http://www.cnblogs.com/chiboo/aggbug/2526116.html?type=0" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/chiboo/archive/2012/05/30/2526116.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry></feed>
