【Python3】初识Python及其基础知识

前言 

        hi~大家好呀,本篇我在自学Python3过程中的一篇自学笔记,主要参考书上和网络上的内容,有错请大家多多指出,让我们一起学习吧~

        本篇文章,我会具体学习Python程序的运行原理以及如何运行Python程序,之后就是在具体学习Python前的一些基础知识。

--------------------------------------------------------------------------------------------------------------------------------

目录

一、初识Python程序并且学会使用自带IDLE

1.Python运行程序原理

2.Python程序的运行以及在IDLE环境下的使用

二、Python基础知识:

1.Python的书写规范

2.标识符和关键字

3.Python的数据类型

4.Python的运算符


一、初识Python程序并且学会使用自带IDLE

1.Python运行程序原理

        首先,Python是一种程序语言。在Python的发展过程中形成了Python2.x和Python3.x两种不同系列的版本。本篇就是基于我的Python版本3.10下写的。

        既然是一种程序语言,那么也满足人对计算机实现指令操控的需求。程序在具体的实现上遵循了一定的模式,典型的程序设计模式就是IPO模式:程序由输入(Input)、处理(Process)、输出(Output)三部分组成。

        那么,实现上述要求的首先就是我们所完成的源代码。正如C语言中的.c文件,C++中的.cpp文件,java中的.java文件,Python中类似这样的文件就是.py文件,同样的,也就是源文件。然后经过Python解释器翻译成中间码,中间码是.pyc文件。再由Python虚拟机PVM就像Java中的虚拟机JVM那样,将这个中间码逐条翻译成机器指令进行执行。

        上面的大致过程可以用如下图进行解释:

 

         需要进行说明的是,.pyc文件保存在Python的安装目录下的Lib中的__pycache__下的。

 

        如果Python无法在磁盘上写入字节码即.pyc文件的话,那么其字节码文件就会只在内存中生成,程序运行结束时丢弃。所以平时写的源程序只需要装载一次,所以并没有保存.pyc文件。但是比如import(导入头文件类似的功能)导入其他的源文件时,此时就会在当前目录下生成.pyc文件,后序会进行演示。 -- .pyc文件可以重复利用,省略了解释器那一步,能够提高执行效率。

2.Python程序的运行以及在IDLE环境下的使用

        在安装完Python包后,会发现在计算机快捷栏下的Python3中会出现如下四种可执行文件:

        第一个IDLE就是自带的集成开发环境。

        第二个时以命令行的方式启动Python的解释器。

        第三个和第四个均为帮助文档。

        首先,我们需要认识到的是如何在windows自带的cmd下执行Python程序和如何在自带的IDLE下完成新建源程序文件、执行的过程。

        先要明确Python编程语言的程序执行方式:

1.交互方式

        Python解释器即时响应并且运行用户的程序代码,有输出就输出结果。

2.文件方式

        即编程方式,写在程序文件中,启动解释器批量执行文件的代码。

        这两种的执行方式分别适用于调试少量代码最常用的编程方式

        比如,在cmd下以交互执行方式进行运行:(两种方式打开:1.cmd --输入Python 2.打开Python包中的第二个执行文件)

        第一种方式:

         第二种方式:

 

         当输入一行Python代码后,按下enter,解释器立马进行工作,执行当前这条Python语句。

        同样的,此时光标继续闪动,可以继续输入简单的Python代码,按下enter就执行。(如果没有显示打出,那么也就相当于换行效果)

        上面就是简单的cmd下的交互实现,下面我们具体了解一下在IDLE的执行Python程序吧:

        IDLE下的交互执行:(打开IDLE可以去那四个文件中的第一个文件打开哦,也可以参照目录:C:\Users\HP\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Python 3.10) 

        直接打开此画面就可以直接进行交互执行了:

        可以发现和刚刚的操作无异。

        可以发现,在Python的交互执行模式下,并没有写入磁盘中的.py文件,也就是没有实现文件的执行方式。cmd下交互执行无法使用文件的执行方式,但是在自带的IDLE下是可以进行实现的:

        IDLE下的文件执行:(程序的常见标准执行方式)

        首先按下File->New File就可以新建一个Python文件,初始文件名就是untitled,当crl s或者File->Save第一次保存,就会要求输入文件名字。我们写入之前测试的简单Python代码,然后保存为test1的名字。

        写入

         保存

        然后在当前界面, 按下Run->Run Module就可以运行了(或者快捷键F5):

(注意是在源文件所在的界面按下Run)

        在了解完Python程序的执行方式后以及使用Windows的cmd进行交互式执行、IDLE的使用,我们来稍微了解一下Python的相关基础知识,语法吧:(之后我就会在PyCharm下进行编程哦)

二、Python基础知识:

1.Python的书写规范

        Python通常一行书写一条语句,一行一条的时候,语句结束不加分号

        Python一行书写多条语句的时候,语句间应该使用分号间隔。

        如果书写一条语句过长,需要进行换行书写的话,可以在一条语句外部加上\就表示分行,如果是()、[]、{}括号之类的在内部默认支持分行。

        上述就是Python的语句规范,下面代码作为演示:

data1 = 1
data2 = 2
# Python语句通常一行书写一条,结尾不加分号
data3 = 3; data4 = 4
print(data3); print(data4)
# 一行书写多条语句直接应该使用分号进行间隔
str1 = "Hello" \
        "world"
# 一条语句写不下一行时可以使用\进行间隔
str2 = ("hello"
        "world")
day = [1, 2,
       3, 4]
print(str1)
print(str2)
print(max(day))
# 同样使用括号也支持一行语句分行书写,需要注意"

        注意""括起来的是字符串哦,在换行的时候,别忘了""的存在哦~

        Python中的语句块

一个语句块,也就是复合语句,由多行代码组成。Python中的一个语句块由多行代码相同的缩进组成。C/C++和Java中一个语句块就是用大括号来进行表示的{}

建议以4个空格为一个缩进。

         比如下面使用if else语句进行演示:

electricity = 10
if electricity < 20:
    i = 100 - electricity
    print("当前电量不足,需要充{}的电量".format(i))
else:
    print("当前电量充足,还有{}的电量".format(electricity))

        注意if和else语句在C/C++/Java中的条件判断的圆括号()不存在,取而代之的就是在对应关键字之后加一个空格,结束条件后加上:作为此语句下的语句块开始。

        Python中的注释:

多行注释使用的是三个'或者"作为开始和结束的标志,单独为一行,中间就可以进行多行注释了。这其实是一种跨行的字符串。

单行注释使用的是#,在其后面(此行)写即就为注释 。

str1 = """
    多行注释
    2022 - 10 - 24
"""
print("单行注释")  # 输出语句 -- 单行注释
print(str1)  # 可以证明多行注释实际上就是一个多行字符串
'''
    这个
    也是多行注释哦
'''

        当然,在写注释的时候也需要一定的规范:比如在#后写注释时,之间要留下一个空格。然后在行内注释的时候直接的间隔至少两个空格哦。

2.标识符和关键字

        计算机数据中的一个变量、方法、对象都需要名称,而这些名称所使用的的符号就是所谓的标识符,方便程序进行调用。

        标识符的格式:

Python标识符可以由如下组成:字母、数字、_。同理,注意不能以数字开头

标识符区分大小写,没有长度限制。

注意不可和关键字重名。

标识符的命名尽量符合见名知义的原则,提高代码的可读性。

        在了解完后标识符后,我们再来看看关键字吧:

        Python语言保留某些单词作为特殊用途,这些单词被称为关键字。标识符不可与其重名哦~

andasassertbreakclasscontinue
defdelelifelseexceptFalse
finallyforfromglobalifimport
inislambdanonlocalnotor
NonepassraisereturnTruetry
whilewithyield

        可以使用帮助文档进行详细查看关键字信息哦,在交互执行下,输入help()

        然后输入指令keyworlds

         任意输入一个关键字名字即可:

        按下enter就是看下一行,输入q就可退出当前画面,quit就退出此查询系统。

3.Python的数据类型

        计算机程序设计的目的是存储和处理数据,将数据分为不同并且合理的类型既可以方便数据处理,也可以提高数据的处理效率,节省储存空间。数据类型指明了数据的状态和行为

        在Python中,数据类型有:

数值类型(Number)

        基本数据类型,包含整型(int)、浮点型(float)、复数类型(complex)、布尔类型(bool)四种。

字符串类型(Str)

        是由一对' 或者"以及三个引号'''、"""括起来的字符序列。由于字符串应用频繁,有时候我们也将字符串当做基本数据类型哦。

列表类型(List)

        是一种序列类型,由[]括起来的数据集合。列表内容用,进行分隔。

元组类型

        元组由0个和读个元素组成的不可变序列类型。用()括起来的数据集合,和列表的区别除了括号不同外就是无法修改数据。

字典类型

        映射类型,可以实现通过数据查找关联数据的功能,是用{}括起来的数据集合:字典中的数据包含两部分:键和值,键通常是一个字符串,对应的值可以任意类型,中间由:表示映射关系。同样的不同元素之间用,进行间隔。

集合类型

        在Python中,集合是一组对象的集合,此对象可以是任何类型。元素之间没有任何顺序,并且元素都不重复。集合和数学上的集合类似,使用{}进行表示或者set()进行表示。空集合必须使用set()进行表示。

        上述类型只是大致的介绍和理解,下面简单使用代码演示一下如上类型:

        整型中,表示其数据的方式有四种:十进制(直接就是字面值),二进制(以0B/0b开头),八进制(0o/0O开头),十六进制(0X/0x开头)。可以使用方法type()测试类型。将十进制转化为对应进制类型的方法有:bin()、oct()、hex()

在Python中变量具备类型的概念,即变量的类型由所赋的值来决定。--系统自动识别变量的数据类型

        我们可以使用交互执行的方式测试代码:

         浮点型是带有小数点的数据类型,也可以使用十进制或者科学计数法进行表示:科学计数法中E或者e的基数为10,后面的整数表示指数,默认为+,想表示负数在E/e后加-即可。Python的浮点型占8个字节,能表示数的精度为2.2e-302~1.8e308。

f = 1.2  # 带有小数点的
f3 = 1.1e2  # 可以使用科学计数法进行表示
f4 = 1.2E-2  # +-
print(f, f3, f4)
print(type(f), type(f3), type(f4))

         布尔类型可以看做是一种特殊的整型,True和False。如果将这两个关键字进行数值运算就分别代表1和0.空对象空的数据类型均可以当做是False,有值的均为True。

        使用bool方法可以验证变量是否为空。

Bool = True
print(type(Bool))
i = 0
print(bool(i))  # 验证空对象
while Bool:
    print(i, end=" ")  # end参数可以修饰结尾的符号,默认为\n
    i += 1
    if i == 10:
        Bool = False
print()  # 打印\n
print(i)
print(bool(i))  # 验证非空对象

         

          字符串类型、列表类型、元组类型、集合类型

str1 = 'Hello'
str2 = "Hello"  # ''或者 "",多行字符串使用'''或者"""进行,上面已经演示过
print(str1, str2)
list1 = [1, 2, 3, "world", 3.2]  # 列表 数据集合 -- 可变
print(list1[0])
list1[0] = "Yu"
print(list1[0])
tuple1 = (1, 2, 3, "world")  # 元组 数据集合 -- 不可变
print(tuple1[0])
print(tuple1[3])
gather1 = {1, 2, 3}  # 集合 元素不重复
gather2 = set([1, 2, "shen"])
gather3 = set()  # 空集合
print(bool(gather3))
print(gather1, gather2)

         字典类型:使用{},数据有两个部分,键值。每个数据之间用,进行分隔。

dictionary = {'year': 2022, 'age': 19, '生日': "农历6月初10"}
print(dictionary)
print(dictionary.get("year"))
print(dictionary.get("age"))
print(dictionary.get("生日"))

        使用get方法可以返回键对应的值。

        如果想要比较类型之间的是否相同的话可以使用isinstance(obj, 类型),相同就返回True,否则返回False。

4.Python的运算符

         运算符是用来表示不同运算类型的符号,运算符可以分为算术运算符、比较运算符、逻辑运算符、赋值运算符:

        算术运算符:

+相加
-相减
*

相乘

/

相除

%求余
**求幂
//整除

        比较运算符:< > <= >= == != (判断完后返回的值也就是布尔类型的)

        赋值运算符:=

                相关应用:

        复合赋值运算符:+=、-=、*=、**=、/=、%=、//=

        位运算符:根据整型的二进制进行变化

~~i按位取反(二进制每一位进行取反)
&i&j按位与(二进制对应的一位均为1就为1,否则为0)
|i|j按位或(二进制对应的一位有1就为1,全0就为0)
^i^j按位异或(二进制对应的相等就为0,不相等就为1)
>>i>>j右移(i为被操作数,向右移动j位,左边补符号位,无符号补0)
<<i<<j左移(i为被操作数,向左移动j位,右边补0)

         逻辑运算符:and、or、not表示逻辑与、逻辑或、逻辑非。C/C++中为&&、||、!

        运算符的优先级

优先次序运算符优先次序运算符
1**(指数)8|
2~ +(正数) -(负数)9< > <= >=
3* / % //10== !=
4+ -11= += -= *= /= %= //=
5>> <<12not
6&13and or
7^

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值