Python学习笔记:与Java 基础语法对比
闲着无聊学习下Python 的语法。由于我目前主要编程语言还是Java ,所以针对Python 的学习我主要是通过与Java 进行对比。我使用的是Python3,因此语法上也会遵循Python3 的规则。
简介
Python是一种解释型、面向对象、动态数据类型的高级程序设计语言。
Python由Guido van Rossum于1989年底发明,第一个公开发行版发行于1991年。
像Perl语言一样, Python 源代码同样遵循 GPL(GNU General Public License)协议
以上内容摘自菜鸟教程
1. 变量的使用
从类型上说,Java是静态类型语言,Python是动态类型语言。所谓静态类型就是变量需要先声明再使用,动态类型是不需要事先声明变量的类型。
例如在Java中声明变量:
int var = 0;
我们需要先确定变量的类型,再为变量赋值。而在Python中,变量无需事先声明:
var = 0
可以说是拿起来就能用,正是因此Python 的语法要比Java 更灵活。
2. 忘掉分号
Java中语句的结束强制以";"为结尾,Python中我们当然也可以用分号,但并不建议这样用。通常在Python 中我们用换行表示语句的结束。
3. 输出语句
如果你有过在Java 代码中大量拼接字符串的体验,那么你可能会爱上Python的语法。在python中打印变量需要使用占位符,如:
print("This is a %s"% ("dog"))
4. 数组和列表
Java 中的数组是很很实用的数据结构,Python 中同样有类似的数据结构。我们用代码对比两个语言的差异:
- java:
 
int[] array={1, 2, 3, 4, 5};
- Python:
 
list = [1, 2, 3, 4, 5 ]
不过由于Python 是动态数据类型 ,所以在list中的元素可以是不同的数据类型:
list=[1, 2, "a", "b", "c"]
												
											Python学习笔记:与Java 基础语法对比的更多相关文章
- Java 学习笔记(1)——java基础语法
		
最近抽时间在学习Java,目前有了一点心得,在此记录下来. 由于我自己之前学过C/C++,而Java的语法与C/C++基本类似,所以这一系列文章我并不想从基础一点点的写,我想根据我已有的C/C++经验 ...
 - Java基础学习笔记七 Java基础语法之继承和抽象类
		
继承 继承的概念 在现实生活中,继承一般指的是子女继承父辈的财产.在程序中,继承描述的是事物之间的所属关系,通过继承可以使多种事物之间形成一种关系体系. 例如公司中的研发部员工和维护部员工都属于员工, ...
 - Java基础学习笔记三 Java基础语法
		
Scanner类 Scanner类属于引用数据类型,先了解下引用数据类型. 引用数据类型的使用 与定义基本数据类型变量不同,引用数据类型的变量定义及赋值有一个相对固定的步骤或格式. 数据类型 变量名 ...
 - Java基础学习笔记四 Java基础语法
		
数组 数组的需求 现在需要统计某公司员工的工资情况,例如计算平均工资.最高工资等.假设该公司有50名员工,用前面所学的知识完成,那么程序首先需要声明50个变量来分别记住每位员工的工资,这样做会显得很麻 ...
 - Java基础学习笔记八 Java基础语法之接口和多态
		
接口 接口概念 接口是功能的集合,同样可看做是一种数据类型,是比抽象类更为抽象的”类”.接口只描述所应该具备的方法,并没有具体实现,具体的实现由接口的实现类(相当于接口的子类)来完成.这样将功能的定义 ...
 - Java基础学习笔记二 Java基础语法
		
注释 注释用来解释和说明程序的文字,注释是不会被执行的. 单行注释 //这是一条单行注释 public int i; 多行注释 /* 这是 * 一段注释, * 它跨越了多个行 */ public vo ...
 - Java基础学习笔记六 Java基础语法之类和ArrayList
		
引用数据类型 引用数据类型分类,提到引用数据类型(类),其实我们对它并不陌生,如使用过的Scanner类.Random类.我们可以把类的类型为两种: 第一种,Java为我们提供好的类,如Scanner ...
 - Java基础学习笔记五 Java基础语法之面向对象
		
面向对象 理解什么是面向过程.面向对象 面向过程与面向对象都是我们编程中,编写程序的一种思维方式.面向过程的程序设计方式,是遇到一件事时,思考“我该怎么做”,然后一步步实现的过程.例如:公司打扫卫生( ...
 - Java基础学习笔记九 Java基础语法之this和super
		
构造方法 我们对封装已经有了基本的了解,接下来我们来看一个新的问题,依然以Person为例,由于Person中的属性都被private了,外界无法直接访问属性,必须对外提供相应的set和get方法.当 ...
 - Python学习笔记1(基础语法)
		
1.Python的文件类型: 源代码:扩展名以py结尾.python写的程序不需要编译成二进制代码,可以直接运行.pyw是Windows下开发图形界面的源文件. 字节代码:扩展名以pyc结尾,是编译过 ...
 
随机推荐
- 《转》python学习(5)--数据类型
			
转自 http://www.cnblogs.com/BeginMan/archive/2013/06/08/3125876.html 一.标准类型函数 cmp():比较大小 str():转换为字符串 ...
 - Android英文文档翻译系列(1)——AlarmManager
			
原文:个人翻译,水平有限,欢迎看官指正. public class Ala ...
 - 【BZOJ4553】[Tjoi2016&Heoi2016]序列 cdq分治+树状数组
			
[BZOJ4553][Tjoi2016&Heoi2016]序列 Description 佳媛姐姐过生日的时候,她的小伙伴从某宝上买了一个有趣的玩具送给他.玩具上有一个数列,数列中某些项的值可能 ...
 - iOS tableview上放textfield
			
用UITableViewController就可以了,处理键盘弹出和消失的代码已经封装在UITableViewController里了.
 - 音频的录制和播放功能(audio) ---- HTML5+
			
模块:audio Audio模块用于提供音频的录制和播放功能,可调用系统的麦克风设备进行录音操作,也可调用系统的扬声器设备播放音频文件.通过plus.audio获取音频管理对象. 应用场景:音频录制, ...
 - KMP的next数组性质运用
			
hdu2594 Simpsons' Hidden Talents Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 ...
 - 整数快速幂hdu(1852)
			
hdu1852 Beijing 2008 Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/65535 K (Java/Others ...
 - KM算法(最优匹配)
			
hdu2255 奔小康赚大钱 Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) T ...
 - 无向连通图求割点(tarjan算法去掉改割点剩下的联通分量数目)
			
poj2117 Electricity Time Limit: 5000MS Memory Limit: 65536K Total Submissions: 3603 Accepted: 12 ...
 - C++程序风格的思考
			
转载自:http://www.cppblog.com/weiym/archive/2013/04/27/199781.html 发现厚积薄发中有很多值得学习的东西 故引用之: 最近有机会看号称是公司最 ...