(Python基础)新时代语言!一起学习Python吧!(一):认识Python、Py解释器作用;编写第一个Python程序;Python中的基本数据结构

本文涉及的产品
轻量应用服务器 2vCPU 4GiB,适用于搭建容器环境
轻量应用服务器 2vCPU 4GiB,适用于搭建Web应用/小程序
轻量应用服务器 2vCPU 1GiB,适用于搭建电商独立站
简介: 认识Python前提安装好Python,这里使用3.13版本如今Python作为变成姐最炙手可热的编程语言,它的使用途径涵盖绝大部分生活中需要的开发需要。许多大型网站就是用Python开发的,例如YouTube、Instagram,还有国内的豆瓣。很多大公司,包括Google、Yahoo等,甚至NASA都大量地使用Python。

认识Python

前提安装好Python,这里使用3.13版本

如今Python作为变成姐最炙手可热的编程语言,它的使用途径涵盖绝大部分生活中需要的开发需要。

许多大型网站就是用Python开发的,例如YouTube、Instagram,还有国内的豆瓣。很多大公司,包括Google、Yahoo等,甚至NASA都大量地使用Python。

Python的优点:

  1. 简单
  2. 方便

追求的是,尽量写容易看明白的代码,尽量写少的代码。

Python适合的开发的应用类型:

  1. 网络应用(网站、后台服务等)
  2. 小工具(脚本)
  3. 包装其他脚本
  4. AI分析
  5. 数据处理
  6. ...

这样看Python是不是觉得有点万金油?实际上Python也就是这样,比起Java来说,Python也不遑多让

每门编程语言都有缺点,Python也有


Python的缺点其一:运行速度慢

  • 和C相比非常慢,因为Python是解释型语言, 执行的代码会一行一行的翻译成机器码
  • 翻译的整个过程非常慢

C是直接编译为机器码,所以非常快

尽管有性能缺陷,但大量的应用程序不需要这么快的运行速度,因为用户根本感受不出来。更别说现在还有其他的性能框架能在一定程度上替换掉影响不好的用户体验的效果。


Python缺点其二:代码不能加密

如果要发布Python程序,实际上就是发布源代码,但是呢,这个代码不能加密是针对原生的Python而言,如果使用其他插件还是可以对部分代码进行加密的(尽管说能破解掉就是了)

这个缺点主要体现在一些需要贩卖源码或者盗窃问题上

解释器

对于Python来说,可以合理的包含其他语言也是它的优势之一,这就不得不提到解释器了。

Python通过解释器,解释为各样的代码和显示内容。

CPython

当从Python官网下载并安装好Python3.x后,就直接获得了一个官方的解释器:CPython

  • 这个解释器是C语言开发,所以是CPython。

CPython是使用最广的Python解释器

  • IPython

IPython是基于CPython之上的一个交互式解释器,也就是说,IPython只是在交互方式上有所增强,但是执行Python代码的功能和CPython是完全一样的

PyPy

PyPy是另一个Python解释器,它的目标是执行速度。PyPy采用JIT技术,对Python代码进行动态编译(注意不是解释),所以可以显著提高Python代码的执行速度。

绝大部分代码都可以在PyPy下运行,但需要注意,相同的Python代码在两种解释器下执行可能会有不同的结果。因为PyPy与CPython解释的方式是不一样的,如果需要使用PyPY,那么建议先了解一下PyPy和CPython的不同点。

Jython

Jython是运行在Java平台上的Python解释器,可以直接把Python代码编译成Java字节码执行。

IronPython

IronPython和Jython类似,只不过IronPython是运行在微软.Net平台上的Python解释器,可以直接把Python代码编译成.Net的字节码。

第一个Python程序

编辑器创建.py文件

创建一个.py文件,在文件内输入

print("hello Python")

然后我们运行这个.py文件

python 文件名.py

交互式输入输出

打开cmd窗口,输入python,进入Python的交互式命令模式

  • input() 这个函数是输入函数,它代表接收用户输入的值,并且将输入的值返回;若没有接收的变量,则返回到界面。

可以照如下代码编写

  • 示例1
>>> input()
测试
"测试"
>>>
  • 示例2
>>> name = input()
zhangsan
>>> name
"zhangsan"

数据类型

整数

Python可以处理任意大小的证书,包括负整数

  • 基本表示方法和数学上的写法一模一样
    • 如:1,100,50,-100,0 ...

在Python中,可以使用十六进制表示整数,十六进制0x前缀和0-9,a-f表示。

  • 如:0xfff000xa123e445bc2

对于很大的数字,例如:1000000000000,我们正常看是不是难以分清这个数有几个0?Python允许在数字中以_分隔。因此,可以写成:1_0000_0000_0000,这样完全是一样的

a = 1
b = 1.1
c = 0x11a
d = 100_000_000
print(a,b,c,d) # 1 1.1 282 100000000

注:Python中的整数没有大小限制

在其他语言中,整数是存在限制问题的,因为它受到了存储长度的大小限制。

浮点数(小数)

浮点数可以是数学写法;

  • 1.23 2.11 5.1 等

但是对于很大或很小的浮点数,就必须用科学计数法表示。

我们将e代替为10

如:

  • 1.23*10^9 就是 1.23e9
  • 12.3e8 就是 12.3*10^8
  • 0.000012可以写成: 1.2e-5

整数和浮点数在计算机内部存储的方式是不同的,整数运算永远是精准的。

  • 但是浮点数运算则可能会出现四舍五入的误差
e = 5.1
f = 5.1e2
g = 5.1e-2
print(e,f,g) # 5.1 510.0 0.051

注:Python中,浮点数没有大小限制,但是超出一定范围会被表示为inf(无限大)

字符串

字符串是以单引号''或者""括起来的任意文本;

注意:''和""本身只是一种表示方式,不是字符串的一部分,因此字符串'abc'只有a,b,c三个字符

如果要将''符号本身定义为一个字符那么需要在''符号前面添加\反斜杠标识

例如:

'I\'m zhangsan'

表示的内容为:

I'm zhansgan

转义字符\可以转义很多字符,比如\n表示换行,\t表示制表符,字符\本身也要转义,所以\\表示的字符就是\

如果字符串内部有很多换行,用\n写在一行里不好阅读,为了简化,Python允许用'''...'''的格式表示多行内容(跟js的``相当),可以自己试试:

j = "Hello"
k = 'Hello'
l = '''Hello'''
m = """
Hello
Python
"""
str = "\t制表符,\n换行符,\\反斜杠,\'单引号,\"双引号,\r回车"
print(j,k,l,m)
# Hello Hello Hello
# Hello
# Python
print(str) 
#        制表符,
# 回车符,\反斜杠,'单引号,"双引号,

布尔值(Boolean)

布尔值和布尔代数的表示完全一致,一个布尔值只有TrueFalse两种值,要么是True,要么是False

在Python中,可以直接用TrueFalse表示布尔值(请注意大小写),也可以通过布尔运算计算出来:

h = True
i = False
print(h,i) # True False

在python中,涉及到布尔值运算,就可以使用andornot运算

其作用与 &&、|| 、!的作用相同

and运算是与运算,双方值都为Trueand运算结果才是True

or运算是或运算,双方只要其中有一个为Trueor运算结果就是True

not运算是非运算,它是一个单目运算符,把True变成FalseFalse变成True

if age >= 18:
    print('adult')
else:
    print('teenager')

空值

空值是Python里一个特殊的值,用None表示。None不能理解为0,因为0是有意义的,而None是一个特殊的空值。

拓展:在其他语言中的空值

  • java——null
  • js——null
  • go——nil

变量

变量,可以看作是一个存储数值的物件,它的数据类型是任意的。

变量在程序中用一个变量名表示,变量名必须是大小写英文、数字和_的组合,且不能用户数字开头

  • 变量声明示例
a = 1
v = "test"
isShow = True
my_body = "good"

在Python中,=号看作是赋值语句,其目的是将右侧数值赋值给左侧变量

而Python中,上述声明的变量都称作动态变量。

这样子的写法也称为动态语言,与之对应的是静态语言(Java、Golang)。

静态语言在定义变量时必须指定变量类型,如果赋值的时候类型不匹配,就会报错。

常量

常量通俗来说就是不能更改的变量,比如数学中π就是一个常量

在Python中,用 全部大写的变量名 来表示常量

PI = 3.1415926

而实际上,PI 仍然是变量,Python没有任何规定保证PI变量不会被改变

这个常量的称呼是我们开发自定的规定!

PI = 3.1415926
print(PI) # 3.1415926
PI = 3.14 # 可以更改,但是不建议更改。
print(PI)

💕👉博客专栏

目录
相关文章
|
1月前
|
存储 Java 数据处理
(numpy)Python做数据处理必备框架!(一):认识numpy;从概念层面开始学习ndarray数组:形状、数组转置、数值范围、矩阵...
Numpy是什么? numpy是Python中科学计算的基础包。 它是一个Python库,提供多维数组对象、各种派生对象(例如掩码数组和矩阵)以及用于对数组进行快速操作的各种方法,包括数学、逻辑、形状操作、排序、选择、I/0 、离散傅里叶变换、基本线性代数、基本统计运算、随机模拟等等。 Numpy能做什么? numpy的部分功能如下: ndarray,一个具有矢量算术运算和复杂广播能力的快速且节省空间的多维数组 用于对整组数据进行快速运算的标准数学函数(无需编写循环)。 用于读写磁盘数据的工具以及用于操作内存映射文件的工具。 线性代数、随机数生成以及傅里叶变换功能。 用于集成由C、C++
268 0
|
1月前
|
存储 JavaScript Java
(Python基础)新时代语言!一起学习Python吧!(四):dict字典和set类型;切片类型、列表生成式;map和reduce迭代器;filter过滤函数、sorted排序函数;lambda函数
dict字典 Python内置了字典:dict的支持,dict全称dictionary,在其他语言中也称为map,使用键-值(key-value)存储,具有极快的查找速度。 我们可以通过声明JS对象一样的方式声明dict
122 1
|
1月前
|
算法 Java Docker
(Python基础)新时代语言!一起学习Python吧!(三):IF条件判断和match匹配;Python中的循环:for...in、while循环;循环操作关键字;Python函数使用方法
IF 条件判断 使用if语句,对条件进行判断 true则执行代码块缩进语句 false则不执行代码块缩进语句,如果有else 或 elif 则进入相应的规则中执行
180 1
|
1月前
|
Java 数据挖掘 数据处理
(Pandas)Python做数据处理必选框架之一!(一):介绍Pandas中的两个数据结构;刨析Series:如何访问数据;数据去重、取众数、总和、标准差、方差、平均值等;判断缺失值、获取索引...
Pandas 是一个开源的数据分析和数据处理库,它是基于 Python 编程语言的。 Pandas 提供了易于使用的数据结构和数据分析工具,特别适用于处理结构化数据,如表格型数据(类似于Excel表格)。 Pandas 是数据科学和分析领域中常用的工具之一,它使得用户能够轻松地从各种数据源中导入数据,并对数据进行高效的操作和分析。 Pandas 主要引入了两种新的数据结构:Series 和 DataFrame。
293 0
|
1月前
|
存储 Java 索引
(Python基础)新时代语言!一起学习Python吧!(二):字符编码由来;Python字符串、字符串格式化;list集合和tuple元组区别
字符编码 我们要清楚,计算机最开始的表达都是由二进制而来 我们要想通过二进制来表示我们熟知的字符看看以下的变化 例如: 1 的二进制编码为 0000 0001 我们通过A这个字符,让其在计算机内部存储(现如今,A 字符在地址通常表示为65) 现在拿A举例: 在计算机内部 A字符,它本身表示为 65这个数,在计算机底层会转为二进制码 也意味着A字符在底层表示为 1000001 通过这样的字符表示进行转换,逐步发展为拥有127个字符的编码存储到计算机中,这个编码表也被称为ASCII编码。 但随时代变迁,ASCII编码逐渐暴露短板,全球有上百种语言,光是ASCII编码并不能够满足需求
109 4
|
Serverless Python
在Python中,用于实现哈希表的数据结构主要是字典(`dict`)
在Python中,用于实现哈希表的数据结构主要是字典(`dict`)
221 1
|
8月前
|
存储 人工智能 索引
Python数据结构:列表、元组、字典、集合
Python 中的列表、元组、字典和集合是常用数据结构。列表(List)是有序可变集合,支持增删改查操作;元组(Tuple)与列表类似但不可变,适合存储固定数据;字典(Dictionary)以键值对形式存储,无序可变,便于快速查找和修改;集合(Set)为无序不重复集合,支持高效集合运算如并集、交集等。根据需求选择合适的数据结构,可提升代码效率与可读性。
|
存储 数据安全/隐私保护 Python
Python常用数据结构——字典的应用
Python常用数据结构——字典的应用
209 2
|
存储 数据安全/隐私保护 Python
Python常用数据结构—字典
Python常用数据结构—字典
239 0
|
存储 Python 容器
Python零基础入门-5 数据结构(集合和字典)
Python零基础入门-5 数据结构(集合和字典)

热门文章

最新文章

推荐镜像

更多