Python VS PHP 基础语法
这几天在学习Python,鄙人平时学习中为了方便记忆和更好的比较与理解语言二者之间在某些情况的优劣性,所以花了点时间,整理了一下 Python 和 PHP 常用语法的一些区别。
一、大小写
PHP:
- 所有用户定义的函数、类和关键词(例如 if、else、echo 等等)都对大小写不敏感;
- 所有变量都对大小写敏感。
Python:
1. 大小写敏感的。
二、变量
PHP:
1. 以“$”标识符开始 如 $a = 1 方式定义
Python:
1. 直接定义 如 a = 1 方式
三、数组/集合
PHP:
// 定义
$arr = array('Michael', 'Bob', 'Tracy'); // 调用方式
echo $arr[0]
// Michael // 数组追加
array_push($arr, "Adam");
// array('Michael', 'Bob', 'Tracy','Adam');
Python:
# list方式(可变)
classmates = ['Michael', 'Bob', 'Tracy'] # 调用方式
print(classmates[0])
# 'Michael' # 末尾追加元素
classmates.append('Adam')
# ['Michael', 'Bob', 'Tracy', 'Adam'] # 指定插入位置
classmates.insert(1, 'Jack')
#['Michael', 'Jack', 'Bob', 'Tracy'] # 删除指定元素
classmates.pop(1)
#['Michael', 'Bob', 'Tracy']
这里要说一下,Python的数组类型有以下几种:
- list:链表,有序的项目,通过索引进行查找,使用方括号“[]”;
- test_list = [1, 2, 3, 4, 'Oh']
- tuple:元组,元组将多样的对象集合到一起,不能修改,通过索引进行查找,使用括号”()”;
- test_tuple = (1, 2, 'Hello', (4, 5))
- dict:字典,字典是一组键(key)和值(value)的组合,通过键(key)进行查找,没有顺序, 使用大括号”{}”;
- test_dict = {'Wang' : 1, 'Hu' : 2, 'Liu' : 4}
- set:集合,无序,元素只出现一次, 自动去重,使用”set([])”
- test_set = set(['Wang', 'Hu', 'Liu', 4, 'Wang'])
打印:
print(test_list)
print(test_tuple)
print(test_dict)
print(test_set)
输出:
[1, 2, 3, 4, 'Oh']
(1, 2, 'Hello', (4, 5))
{'Liu': 4, 'Wang': 1, 'Hu': 2}
set(['Liu', 4, 'Wang', 'Hu'])
四、条件判断
PHP:
if($age = 'man'){
echo "男";
}else if($age < 20 and $age > 14){
echo "女";
}else{
echo "嗯哼";
}
Python:
sex = ''
if sex == 'man':
print('男')
elif sex == 'women':
print('女')
else:
print('这~~')
五、循环
PHP:
$arr = array('a' => '苹果', 'b' =>'三星', 'c' => '华为', 'd' => '谷歌');
foreach ($arr as $key => $value){
echo "数组key:".$key."<br>";
echo "key对应的value:".$value."<br>";
}
Python:
arr = {'a': '苹果', 'b': '三星', 'c': '华为', 'd': '谷歌'}
# 第一种
for (key,value) in arr.items():
print("这是key:" + key)
print("这是key的value:" + value)
# 第二种
for key in arr:
print("这是key:" + key)
print("这是key的value:" + arr[key])
六、函数
PHP:
function calc($number1, $number2 = 10)
{
return $number1 + $number2;
}
print(calc(7));
Python:
def calc(number1, number2 = 10):
sum = number1 + number2
return sum print(calc(7))
有什么讲错的地方或者好的建议,欢迎留言。
Python VS PHP 基础语法的更多相关文章
- Python:笔记(1)——基础语法
Python:笔记(1)——基础语法 我很抱歉有半年没有在博客园写过笔记了,客观因素有一些,但主观原因居多,再多的谴责和批判也都于事无补,我们能做的就是重振旗鼓,继续出发! ——写在Python之前 ...
- Python入门篇-基础语法
Python入门篇-基础语法 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.编程基础 1>.程序 一组能让计算机识别和执行的指令. 程序 >.算法+ 数据结构= 程 ...
- python面向对象的基础语法(dir内置函数、self参数、初始化方法、内置方法和属性)
面相对象基础语法 目标 dir 内置函数 定义简单的类(只包含方法) 方法中的 self 参数 初始化方法 内置方法和属性 01. dir 内置函数(知道) 在 Python 中 对象几乎是无所不在的 ...
- Python入门 —— 02基础语法
基础语法入门学习推荐: 简明 Python 教程 下文仅为入门推荐书籍的补充与重点 多行语句:末尾使用斜杠 ( ) ,将一行分为多行 var = item1 + item2 + item3 注释: ...
- Python学习①. 基础语法
Python 简介 Python 是一种解释型,面向对象的语言.特点是语法简单,可跨平台 Python 基础语法 交互式编程 交互式编程不需要创建脚本文件,是通过 Python 解释器的交互模式进来编 ...
- python学习之基础语法
一.缩进 学习 Python 与其他语言最大的区别就是,Python 的代码块不使用大括号 {} 来控制类,函数以及其他逻辑判断.python 最具特色的就是用缩进来写模块. 缩进的空白数量是可变的, ...
- Python学习笔记——基础语法篇
一.Python初识(IDE环境及基本语法,Spyder快捷方式) Python是一种解释型.面向对象.动态数据类型的高级程序设计语言,没有编译过程,可移植,可嵌入,可扩展. IDE 1.检查Pyth ...
- python学习笔记--基础语法
等待用户输入 #!/usr/bin/python raw_input("\n\nPress the enter key to exit.") 简单的判断 #!/usr/bin/py ...
- Python自动化开发-基础语法
1.编码 计算机只能处理数字,如果要处理文本,就必须先把文本转换为数字才能处理.解决思路:数字与符号建立一对一映射,用不同数字表示不同符号. ASCII(American Standard Code ...
随机推荐
- ThinkPHP 模板substr的截取字符串函数
ThinkPHP 模板substr的截取字符串函数在Common/function.php加上以下代码 /** ** 截取中文字符串 **/ function msubstr($str, $start ...
- gRPC源码分析1-SSL/TLS
引子 前几天看到微信后台团队分享了TLS相关文章,正好gRPC里TLS数据加密是很重要的一块,于是整理出了这篇文章. 在gRPC里,如果仅仅是用来做后端微服务,可以考虑不加密.本文太长,先给个大纲. ...
- .net core和angular2之前端篇—1
2016-10-20更新 今天的这篇文章还是一篇"Hello World",只不过开发环境有所改变--Visual Studio Code+Angular2+Webapck,也算是 ...
- Kafka:主要参数详解(转)
原文地址:http://kafka.apache.org/documentation.html ############################# System ############### ...
- angularJS(5)
angularJS(5) 一,数据循环:特别要注意作用域 使用ng-repeat指令. <div ng-app="myApp" ng-controller="myC ...
- 《深入理解Java虚拟机》虚拟机性能监控与故障处理工具
上节学习回顾 从课本章节划分,<垃圾收集器>和<内存分配策略>这两篇随笔同属一章节,主要是从理论+实验的手段来讲解JVM的内存处理机制.好让我们对JVM运行机制有一个良好的概念 ...
- hibernate一对一主键双向关联
关联是类(类的实例)之间的关系,表示有意义和值得关注的连接. 本系列将介绍Hibernate中主要的几种关联映射 Hibernate一对一主键单向关联Hibernate一对一主键双向关联Hiberna ...
- Android开发学习之路-3DTouch效果模仿
3D Touch是什么效果的大家应该都知道了.什么?不知道,那也没办法呀,我也没有iPhone 6s演示给你看的. 本篇博客要做的效果图: 来个低质量动图: 这个动图效果不是很好,实际上模糊效果应该是 ...
- 用Hibernate和Struts2+jsp实现分页查询、修改删除
1.首先用get的方法传递一个页数过去 2.通过Struts2跳转到Action 3.通过request接受主页面index传过的页数,此时页数是1, 然后调用service层的方法获取DAO层分页查 ...
- 【分布式】Zookeeper应用场景
一.前言 在上一篇博客已经介绍了Zookeeper开源客户端的简单实用,本篇讲解Zookeeper的应用场景. 二.典型应用场景 Zookeeper是一个高可用的分布式数据管理和协调框架,并且能够很好 ...