Python简介

Posted 风流 少年

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python简介相关的知识,希望对你有一定的参考价值。

一:简介

Python是一种现代化弱类型 脚本编程语言,其特点是语法简洁优雅、应用场景广泛。

  • 弱类型是指在声明变量时不需要指定数据类型。
  • 语法简洁是指在语法上有更多的简写形式

二:应用场景

  • 大数据
  • 网路爬虫(Scrapy)
  • 人工智能(TransorFlow、PyTorch、Karas)
  • 自动化测试 Selenium
  • 自动化运维
  • 科学计算(NumPy、SciPy、Matplotlib、pandas)
  • web应用开发(Django、Flask)
  • 桌面软件(tkinter、PyQT)
  • 游戏开发

三:语法简洁

Python是一种现代化编程语言,既然是现代化,那就要相比老语言要支持更多的语法。

3.1 声明变量不需要关键字和数据类型

// java
String name = "张三";

// javascript
var name = "张三"

# python
name = "张三"

3.2 不需要在语句最后写;

javascript现在每个语句后面都不用写分号了;

3.3 方法的入参不需要写数据类型,不需要指定返回值类型, 也不需要使用来指定方法体

老语言都是使用一对 来表示方法体的开始和结束,而Python使用冒号:表示方法体的开始,使用缩进(一个Tab)表示方法体。

// java
public int add(int x, int y) 
    return x + y;


// python
def add(x, y):
	return x + y;

3.4 支持负索引

同样是获取最后一个元素,python由于支持负索引代码量就很少,看起来很简洁。

// java
List<String> names = Arrays.asList("a", "b", "c");
System.out.println(names.get(names.size() - 1));

# python
names = ['a', 'b', 'c']
print(names[-1])

# 字符串反转
foobar = 'foobar'
print(foobar[::-1])

3.5 判空

如果字符串为空、元组为空、列表为空、Set集合为空、None、0等值都会视为假,而Java还需要工具方法来返回bool值。

// java
String foobar = "foobar";
if (StringUtils.isNotBlank(foobar)) 
    int length = foobar.length();


// python
foobar = "foobar"
if foobar:
	length = len(foobar)

3.6 全局变量

python在if try 等代码块中定义的变量竟是全局变量,这样try中定义的变量可以直接在finally中直接使用,而像其它java语言就必须把全局变量放在外边,这样一来代码就多了一行,这也是python精简的一个提现。

try:
	f = open('a.txt')
finally:
	f.close()

3.7 读取文件

TextIOWrapper 实现了迭代器可以直接使用for循环读取文件,像java语言要读取文件还需要将File包装成InputStream等,确实Python的写法更加的优雅简洁。

f = open('a.txt')
for line in f:
	print(line)

3.8 命名规范

  • java推荐完整单词命名,即整个单词都完整拼写,如获取字符串长度,length()
  • ptyhon推荐缩写单词,即只写单词的一部分,如获取字符串长度 len()

3.9 嵌套函数

java不支持嵌套函数,而Python支持嵌套函数(闭包)

def function():
    print("function")

    def func():
        print("func")

        def fun():
            print("fun")
        return fun
    return func

function()()()

3.10 其它

Python在老语言的基础上增加很多新的语法,对老的语法也进行简化,这使得在完成相同的功能上Python的代码量相对来说少了一些,看起来更加简洁、清爽。

以上是关于Python简介的主要内容,如果未能解决你的问题,请参考以下文章

requests---requests简介

Python应用tkinter简介

Python应用tkinter简介

Python网络_TCP/IP简介

Python网络_TCP/IP简介

Python_TCP/IP简介