Python 概述

发布于:2024-09-18 ⋅ 阅读:(75) ⋅ 点赞:(0)

目录

一、认识Python

1.1 Python语言的诞生

1.2 Python语言的发展历史

1.3 Python的用法

1.4 Python的优缺点

1.5 Python 的前景

二、Python入门演示

三、切片

四、列表(简单介绍)


一、认识Python

1.1 Python语言的诞生

        吉多·范罗苏姆(Guido van Rossum) 是一个荷兰程序员(人称龟叔,名字前三个字母是 Gui),龟叔在 1989 年圣诞节的时候(当时 33 岁),因为在家里待着无聊, 为了打发时间, 开始了 Python 的开发。

1.2 Python语言的发展历史

  • 第一个正式版本发布于 1991 年。
  • Python 2.0版本于2000年10月发布。
  • 在2008年12月,Python 3.0发布,此版本没有完全兼容之前的Python 2.0。
  • Python也因此分为了Python 3.5派系和Python 2.7派系两大阵营。

1.3 Python的用法

        经历了多年的发展, Python 目前是一个应用场景非常广泛的编程语言。

  • 科学计算&数据分析
  • Web 开发(搭建网站)
  • 自动化运维
  • 人工智能
  • 爬虫程序
  • 自动化测试

1.4 Python的优缺点

优点:

  • 语法言简意赅, 容易上手。
  • 功能强大, 用途广泛。
  • 生态丰富, 具有海量的成熟第三方库。
  • 方便调用 C/C++ 编写的代码进行 高性能/系统级操作。

缺点:

  • 执行效率比较弱.
  • 对于多核心并发程序支持偏弱.
  • 动态类型系统对于大型项目不太友好.

1.5 Python 的前景

        虽然 Python 的应用场景很多,但是纯粹使用 Python 的岗位是比较少见的。

         更常见到的情况是,把 Python 作为一个辅助性质的语言。
 

        在工作中,Python 更像是一个工具,需要用到的时候随手拿起来就用,能够方便的解决不少问题。

二、Python入门演示

  • 字符串是Python 中最常用的数据类型。我们可以使用引号('或")来创建字符串。
  • Python 不支持单字符类型,单字符在Python中也是作为一个字符串使用。
  • Python 访问子字符串,可以使用方括号来截取字符
print("Hello World")
print('Hello World')
print('''Hello World''')

        在Python中,不是只有用双引号的才是字符串。字符串支持用'或",甚至是'''三引号来创建。

        python的三个引号允许字符串跨多行使用,包括换行,TAB和任何其他特殊字符。 三个引号包括单引号和多引号

作用一:用于字符串跨行,不必使用拼接符或换行符,直接使用三个引号即可

multi_line =  """
nice to meet you!
    nice to meet you!
      nice to meet you!
"""
print multi_line

作用二:三引号可以用于注释

#!/bin/env python
#coding:utf8
 
'''
@desc: 计算两个数的和
@param a: 加数a
@param b: 加数b
'''
def sum(a, b):
    return a + b
print sum(1, 2)

        下面我们在通过定义变量的形式尝试打印字符串。

var1 = 'Hello World!'
print(var1)
var2 = "Guido van Rossum "
print(var2)

三、切片

        我们在C语言里说过字符串实际上可以类似看做一个字符数组,我们可以通过访问下标来找到对应的字母。在Python中也类似是这样,但是记住Python没有字符类型,我们只能说是类比着去理解。

  • 切片操作

        通过下标操作是一次取出里面第一个元素。
        通过切片, 则是一次取出一组连续的元素。

        ⼀个完整的切⽚表达式包含两个“:”,⽤于分隔三个参数(start_index、end_index、step),当只有⼀个“:”时,默认第三个参数step=1

        start_index:表示起始索引(包含该索引本身);该参数省略时,表示从对象“端点”开始取值,至于是从“起点”还是从“终点”开始,则由step参数的正负决定,step为正从“起点”开始,为负从“终点”开始。
        end_index:表示终止索引(不包含该索引本身);该参数省略时,表示一直取到数据”端点“,至于是到”起点“还是到”终点“,同样由step参数的正负决定,step为正时直到”终点“,为负时直到”起点“。

注意:这里的区间是左闭右开的,在计算机编程语言中,大部分涉及到区间的都是左闭右开的,例如C++里涉及的iterator迭代器。

        step:正负数均可,其绝对值大小决定了切取数据时的“步长”,而正负号决定了“切取方向”,正表示“从左往右”取值,负表示“从右往左”取值。当step省略时,默认为1,即从左往右以增量1取值。切取方向非常重要!

#在Python中,我们不再使用//注释,改用#

var1 = 'Hello World!'
print(var1[0], var1[0:]) #H Hello World!
#字符串的索引从0开始,所以var1[0]会返回字符串的第一个字符,即'H'。
#var1[0:]从索引0开始,一直到字符串的末尾。没有指定结束索引,它默认打印到字符串的最后一个字符。

var2 = "Guido van Rossum "
print(var2[1:5], var2[5:8]) #uido  va
#var2[1:5]:从索引1开始打印,到索引5结束(不包括索引5)。
#var2[5:8]:从索引5开始打印,到索引8结束(不包括索引8)。

四、列表(简单介绍)

前言:这里我们是为了更进一步介绍切片,提前引入了列表部分,这里只是简单介绍。

        编程中, 经常需要使用变量, 来保存/表示数据。

        如果代码中需要表示的数据个数比较少, 我们直接创建多个变量即可。

        但有时,代码中需要表示的数据特别多,甚至也不知道要表示多少个数据。这时就用列表。

a = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
#切片操作--切取单个值
a[0] #0
a[-4] #从右往左找到第4个元素,也可以理解为从左往右的倒数第4个
#切取完整对象
a[:] # 从左往右
a[::] # 从左往右
a[::-1] # 从右往左
#start_index和end_index全为正(+)索引
a = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

a[1:6] #[1, 2, 3, 4, 5]
#从索引1开始,到索引6结束(不包括索引6)。因此,它打印列表a中索引1到索引5的元素

a[1:6:-1] #[]
#step=-1,决定从右往左取值,而1:6决定了从左往右取值
#两者矛盾,因此输出空列表,说明没取到数据

a[6:1] #[]
#step=1,决定从左往右取值,而6:1决定了从右往左取值
#两者矛盾,因此输出空列表,说明没取到数据

a[6:1:-1] #[6,5,4,3,2]
#从索引6开始,到索引1结束(不包括索引1),步长为-1,因此是反向切片
#从列表的末尾开始,反向提取元素直到索引1之前
#start_index和end_index全为负(-)索引
a = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

a[-1:-6] #[]
#step=1表示从左往右取值,而-1:-6决定了从右往左取值,两者矛盾

a[-1:-6:-1] #[9, 8, 7, 6, 5]
#step=-1表示从右往左取值,-1:-6也是从右往左取值

a[-6:-1] #[4, 5, 6, 7, 8]
#step=1表示从左往右取值,而-6:-1也是从左往右取值


a[:-6] #[0, 1, 2, 3]
#step=1表示从左往右取值,从“起点”开始一直取到end_index=-6


a[:-6:-1] #[9, 8, 7, 6, 5]
#step=-1表示从右往左取值,从“终点”开始一直取到end_index=-6

a[-6:] #[4, 5, 6, 7, 8, 9] 
#step=1表示从左往右取值,从start_index=-6开始,一直取到“终点”


a[-6::-1] #[4, 3, 2, 1, 0]
#step=-1表示从右往左取值,从start_index=-6开始,一直取到“起点”
#start_index和end_index正(+)负(-)混合索引

a = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

a[1:-6] #[1, 2, 3]
#start_index=1在end_index=-6的左边,因此从左往右取值
#step省略,默认为1,也是从左往右取值
 

a[1:-6:-1] #[]
#start_index=1在end_index=-6的左边,因此从左往右取值
#但step=-1则决定了从右往左取值,两者矛盾

a[-1:6] #[]
#start_index=-1在end_index=6的右边,因此从右往左取值
#step省略,默认为1,从左往右取值,两者矛盾

a[-1:6:-1] #[9, 8, 7] 
#start_index=-1在end_index=6的右边,因此从右往左取值
#而step=-1也是从右往左取值

后续敬请期待………… 


网站公告

今日签到

点亮在社区的每一天
去签到