Rumah >pembangunan bahagian belakang >tutorial php >php与Python之间有何区别?Python和php之间的简单比较
php和Python哪个好?php与Python的区别有哪些?很多朋友都会来问这么一个问题,那么今天php中文网给大家来说一说关于php与Python的区别比较,相信你看了这篇文章应该会有所判断。
首先我们来看一看关于php与Python应用的区别:
php是一种通用开源脚本语言。语法吸收了C语言、Java和Perl的特点,利于学习,使用广泛,主要适用于Web开发领域。
python主要是做系统运维、监控、爬虫、队列任务等等,所以,脱离Web开发领域Python比较好用一些。
其次我们看一看关于php与Python语法上面的区别:
注意:python是强类型语言,php是弱类型语言
1、php与Python的输出语法的区别:
php: echo 可以输出多个变量;print ()只输出一个变量,且成功返回值为1,失败为0;print_r() 只输出数组;die() 先输出,后关机;printf() 格式化输出字符串;var_dump()可以判断一个变量的类型与长度,并输出变量的数。
Python: print 默认换行,不换行要加逗号。
2、php与Python变量的区别:
php是以“$”标识符开始;例如:$a = 0的方式来定义的。
Python都是直接来定义的;例如:a=0。
3、php与Python数组之间的区别:
php数组相对简单统一,即array;包括了普通数组和关联数组两部分。
// 定义 $arr = array('Michael', 'Bob', 'Tracy'); // 调用方式 echo $arr[0] // Michael // 数组追加 array_push($arr, "Adam"); // array('Michael', 'Bob', 'Tracy','Adam');
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'])
4、php与Python之间条件判断语句与循环语句的区别:
php与Python之间条件判断语句的区别:
例:php的判断语句为:
if($age = '5'){ echo "小孩"; }else if($age < 25 and $age > 14){ echo "青少年"; }else{ echo "空"; }
Python的判断语句为:
sex = '' if sex == 'man': print('男') elif sex == 'women': print('女') else: print('空')
php与Python之间循环语句的区别:
例: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])
5、php与Python函数语法的区别:
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))
最后我们来看一看php与Python性能的比较:
php的测试:
<?php function fibonacci($i){ if($i<2) return $i; return fibonacci($i-2) + fibonacci($i-1); } echo fibonacci(34);
php5.6测试如下:
qiangjian@localhost:/works/learnCPP$ php -v && time php fib.php PHP 5.6.28 (cli) (built: Dec 6 2016 12:38:54) Copyright (c) 1997-2016 The PHP Group Zend Engine v2.6.0, Copyright (c) 1998-2016 Zend Technologies 5702887 real 0m2.307s user 0m2.278s sys 0m0.017s
php7测试如下:
qiangjian@localhost:/works/learnCPP$ php -v && time php fib.php PHP 7.1.2 (cli) (built: Feb 17 2017 10:52:17) ( NTS ) Copyright (c) 1997-2017 The PHP Group Zend Engine v3.1.0, Copyright (c) 1998-2017 Zend Technologies 5702887 real 0m0.815s user 0m0.780s sys 0m0.015s
Python的测试:
def fibonacci(i): if i<2: return i return fibonacci(i-2) + fibonacci(i-1) print(fibonacci(34))
python2.7测试如下:
qiangjian@localhost:/works/learnCPP$ python2 -V && time python2 ./fib.py Python 2.7.13 5702887 real 0m2.651s user 0m2.594s sys 0m0.027s
python3.5测试如下:
qiangjian@localhost:/works/learnCPP$ python3 -V && time python3 ./fib.py Python 3.5.1 5702887 real 0m3.110s user 0m2.982s sys 0m0.026s
从上面的测试可以看出来python越升级越慢, 而且很多语法不兼容,平时写写算法和小程序可以很好;php中php7和5的速度差别很大,感觉就不像是一个程序,而且进步提升很大。
当然,上面所有的内容,都只是对php与python之间简单的比较,还有很多都没有写出来,但可以看出来的是php与python各有各的优缺点。以上就是这篇文章的全部内容啦,感谢大家关注php中文网!
相关推荐:
黑客应该学PHP还是python?理性分析PHP和python的十处差异
Atas ialah kandungan terperinci php与Python之间有何区别?Python和php之间的简单比较. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!