欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

php与Python之间有何区别?Python和php之间的简单比较

程序员文章站 2022-03-06 15:09:39
...
php和Python哪个好?php与Python的区别有哪些?很多朋友都会来问这么一个问题,那么今天给大家来说一说关于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还是python?理性分析PHP和python的十处差异

PHP程序员使用爬虫技术揭露房租上涨背后的真实数据

以上就是php与Python之间有何区别?Python和php之间的简单比较的详细内容,更多请关注其它相关文章!

相关标签: php Python