从事C和C++开发者快速学python(二)

原创 2016年05月30日 10:21:27

二:变量、运算与表达式
Python变量与C语言中的变量的不同之处,我们用下面一个简单的例子来进行说明:
复利计算器程序:
principal = 1000      #本金
rate = 0.05               #利率
numyears = 5          #期数,年
year = 1
while year <= numyears:
    principal = principal * (1 + rate)
    print year, principal
    year += 1
程序输出:
1   1050.0
2    1102.5
3    1157.625
4    1215.50625
5    1276.2815625
Python是一种动态语言,在程序运行过程中,同一变量名可以(在程序运行的不同阶段)代表不同形式的值(整形,浮点,列表,元组。。。)事实上,程序中使用的变量名是各种数据及对象的引用(此处的引用的用法和C++中的引用不完全一样)。这与C语言不同。C语言中变量名代表的是用来存放结果的一个固定位置及长度的内存片段。从例子中的变量principal可以看出Python语言的动态特征。最初,它被赋值为一个数组。但是稍后程序将它再次赋值:
principal = principle * (1 + rate)
这个语句计算表达式的值,然后将计算结果赋给principle变量做它的新值。当赋值动作发生时,principle最初绑定的值1000被丢弃,赋值结束,不但principle绑定的值发生了变化,它的类型也随着动作发送了相应的变化。在这个例子中,由于rate是个浮点数,所以在赋值完成后,principle也就变成一个浮点数,principle就是计算后生成的这个浮点数内存的引用。
Python中每个语句以换行结束,当然你也可以在一行中写多个语句,这时语句之间必须使用分号分割(C中也是分号结束一条语言)
principal = 1000; rate = 0.05; numyears = 5;
while 语句中的冒号后面的缩近语句块为循环体。注意,Python语句使用缩进块来表示程序逻辑(C语言是使用大括号)。在冒号后面的3条语句为循环体,在每次循环中均执行。Python并未指定缩进的空白(空格和制表符)数目,唯一的要求是同一层次的语句必须使用相同的缩进空白,(注意,要么都是空格,要么都是制表符,别混用)。对于上面的输出可以用格式输出:
print "%3d  %0.2f" % (year, principle)
这样程序输出为:
1    1050.00
2    1102.50
3    1157.63
4    1215.51
5    1276.28
 格式字符串包含普通文本及格式化字符序列(例如“%d”,"%s"和“%f”),这些序列决定特定类型的数据(例如整形,字符串,浮点数)的输出格式“%3d”将一个整数在宽度为3个字符的栏中右对齐,“%.2f”将一个浮点数的小树点后部分转换为2位。格式字符串的作用和C语言中的sprintf()函数基本相同。

运算和表达式和C语言相似度比较大。这块差别不是很大。具体如下:

   需要注意的一个是:5/2 等于2,5.0/2才等于2.5,此处和C语言一样。

Python与C++区别

程序有两种执行方式,解释执行和编译执行。 PYTHON是一种脚本语言,是解释执行的,不需要经过编译,所以很方便快捷,且能够很好地跨平台,写一些小工具小程序特别合适。 而C++则是一种需要编译后运行...

python与c/c++相比的优势

理论上,python的确比C/C++慢(我对Java的开发没有经验,无法评论)。这一点不用质疑。 C/C++是编绎语言,直接使用的是机器指令,而python总是跑在的虚拟机上, 把一个逻辑直接转换为机...

有C/C++/Java基础的,学习Python一篇文章就够了

有C/C++/Java基础的,学习Python一篇文章就够了

从事C和C++开发者快速学python(四)

 单引号,双引号和三引号都可以用来定义字符串。三引号可以定义特别格式的字符串。字符串作为一种序列类型,支持像Matlab一样的索引访问和切片访问。 a = 'Hello World'...

从事C和C++开发者快速学python(三)

 三:条件语句         在这块,Python与其它大多数语言有个非常不同的地方,Python语言使用缩进块来表示程序逻辑(其它大多数语言使用...

C/C++开发者必不可少的15款编译器+IDE

C/C++开发者必不可少的15款编译器+IDE 发表于6小时前| 16455次阅读| 来源CSDN| 122 条评论| 作者夏梦竹 编译器c++web开发开发工具编程语言开发者...

软件研发 针对C/C++开发者的Vim插件

摘要:作为一名C/C++开发者,其最基本的头文件,某些功能,循环,条件语句和主要功能等这些都是一些重复性的枯燥的任务,你是否想借助一些工具来帮助你完成,Vim插件是款不错的选择。 导读:作为一名...
  • seucbh
  • seucbh
  • 2012年08月16日 18:47
  • 924

C/C++开发者必不可少的15款编译器+IDE

Web开发者可选择的编程语言有很多比如,Java、.Net、PHP、Ruby、Perl、Python等等,但是今天我们要讨论的是两个古老且非常流行的语言,即C/C++。正是由于其迷人的特性,赋予了它们...

C/C++开发者必不可少的15款编译器+IDE

C/C++开发者必不可少的15款编译器+IDE http://www.csdn.net/article/2014-02-27/2818564-best-compilers-and-ides-...

C/C++开发者必不可少的15款编译器+IDE

http://www.csdn.net/article/2014-02-27/2818564-best-compilers-and-ides-for-c-programmers 摘要:C/C++这两...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:从事C和C++开发者快速学python(二)
举报原因:
原因补充:

(最多只允许输入30个字)