如何自己建一个网站,重庆网站建设求职简历,大型网站系统架构,手机wap网站多少钱1.Python入门简介
#xff08;1#xff09;什么是Python
Life is short, you need Python#xff01;人生苦短#xff0c;我用Python
Python 是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。
Python 的设计具有很强的可读性#xff0c;相比其他语言…1.Python入门简介
1什么是Python
Life is short, you need Python人生苦短我用Python
Python 是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。
Python 的设计具有很强的可读性相比其他语言经常使用英文关键字其他语言的一些标点符号它具有比其他语言更有特色语法结构。 从排行榜中可以看出近两年Python的编程热度提升迅猛目前已经在第一位的位置。
2Python的特点
**易于学习**Python有相对较少的关键字结构简单和一个明确定义的语法学习起来更加简单。**易于阅读**Python代码定义的更清晰。**易于维护**Python的成功在于它的源代码是相当容易维护的。**一个广泛的标准库**Python的最大的优势之一是丰富的库跨平台的在UNIXWindows和Macintosh兼容很好。**互动模式**互动模式的支持您可以从终端输入执行代码并获得结果的语言互动的测试和调试代码片断。**可移植**基于其开放源代码的特性Python已经被移植也就是使其工作到许多平台。**可扩展**如果你需要一段运行很快的关键代码或者是想要编写一些不愿开放的算法你可以使用C或C完成那部分程序然后从你的Python程序中调用。**数据库**Python提供所有主要的商业数据库的接口。**GUI编程**Python支持GUI可以创建和移植到许多系统调用。可嵌入: 你可以将Python嵌入到C/C程序让你的程序的用户获得脚本化的能力。
3Python的应用领域
**人工智能**Python是学习人工智能的重要基础语言之一许多开源机器学习项目都基于Python编写例如人脸识别系统。**云计算**Python服务于云计算行业许多主流云计算框架如OpenStack都采用Python开发。**Web开发**Python拥有多种免费的Web函数库和网页模板系统能够快速搭建Web框架实现Web开发。**爬虫技术**Python在网络爬虫领域占据主导地位能够自动化地进行数据采集和分析。**网络游戏开发**Python可以用来编写游戏逻辑尤其是2D游戏例如阴阳师就是使用Python编写的。**数据分析**Python在金融分析、量化交易等领域得到广泛应用可以进行复杂的数据处理和报表生成。**自动化和脚本编程**Python是一种强大的脚本语言适用于自动化任务和批量处理。**科学计算和数学**Python包含许多科学计算库如Numpy、Pandas和Matplotlib以及用于数值计算和符号计算的SciPy和SymPy。**教育**Python因其易学易用的特性被许多学校和大学用作编程入门语言。**系统运维**Python在自动化运维中有很大的优势因为它有许多第三方程序库如Ansible适合于系统和网络的维护和管理。
2.Python环境的搭建
1下载Python安装包
首先进入Python的官网https://www.Python.org/根据自己的系统选择对应的版本。 找到对应的版本下载安装即可。安装之后在命令行输入python出现python版本后证明安装成功。 2集成开发环境之PyCharm的安装
进入pycharm的官网 https://www.jetbrains.com/pycharm/点击下载。默认是给30天免费使用具体怎么长时间使用大家自己去搞定哈嘿嘿。
选择专业版点击download耐心等待下载完成。 3编写第一个Python程序hello word
下载完成编辑器以及安装好python环境我们来写第一个python程序hello word打开编辑器创建python file。 输入一行代码print(hello word)右键运行。 在控制台打印出hello wordok就这么简单那么接下来我会带你们一点一点揭开Python的神秘面纱。
3.Python基础数据类型
1Python中数字类型
整型可正可负不带小数点。在Python3中整型没有大小限制所以也可以存储长整型。浮点型可正可负带小数点可以使用科学计数法表示 1.1e2 110。复数复数由实数部分和虚数部分构成可以用a bj,或者complex(a,b)表示 复数的实部a和虚部b都是浮点型。
注意数字类型这种类型是不可变的如果改变数字数据类型的值将重新分配内存空间。
a 1
b 1
print(id(a))
print(id(b))
print(--------)
b 2
print(id(a))
print(id(b))打印结果
4537968432
4537968432
--------
4537968432
4537968464发现当a和b都是1的时候打印的数字是一样的当b改变成另外一个值时a b打印的数字就不一致了。
Id()函数用于返回一个对象的唯一身份标识。
2Python中布尔类型
对与错、是与非、0和1、正与反都是传统意义上的布尔类型在Python中统一使用True和False来表示布尔类型。
在布尔类型一般用于表示条件是否成立成立用True不成立用False。
在Python中可以通过bool函数来测试一个表达式的布尔类型的结果 。
print(数字1:, bool(1))
print(数字0:, bool(0))
print(空字符:, bool())
print(字符1:, bool(1))打印结果
数字1: True
数字0: False
空字符: False
字符1: True3Python中字符类型
**字符串的定义**字符串是由数字、字母、符号组成的一串字符。它是编程语言中表示文本的数据类型。
在Python中使用双引号、单引号、三引号括起来的一系列字符就是字符串,无论是使用单引号还是双引号都必须成对出现。
注意字符一旦赋值不可变如果改变字符串的值相当于重新分配了空间。
在Python中如果某些字符本身有特殊含义或无法使用ASCII码进行表示的时候需要对其进行转义操作一般用单一反斜杠 \ 进行转义。
常见的转义字符
转义字符含义\a发出系统铃声\’单引号\n换行\\反斜杠\双引号\b退格\t纵向制表符\v横向制表符\r回车\f换页
字符串的常见操作
字符串替换replace()
str1 Hello World
str2 str1.replace(World, LiXiang)
print(str2)# 输出Hello LiXiang字符串切割split()
str1 Hello,World,LiXiang
list str1.split(,)
print(list)# 输出[Hello, LiXiang, World]字符串格式化format()
result My name is {}, and I am {} years old.
print(result.format(lixiang, 18))# 输出My name is lixiang, and I am 18 years old.字符串查找find()、index()
data Hello world.
# 使用find()方法查找指定子字符串的位置找不到返回-1
result data.find(World)
# 使用index()方法查找指定子字符串的位置找不到会抛出异常
result data.index(World)字符串大小写转换upper()、lower()
str1 Hello World
# 转换为大写
print(str1.upper())
# 转换为小写
print(str1.lower())# 输出
# HELLO WORLD
# hello world4.Python运算符
1算数运算符
算术运算符的作用用于支持日常一些普通的算术运算。
算数运算符作用加-减*乘/除%求模//取整除**n次幂
# 加、减-、乘*、除/、%%、取整数//、n次幂**
print(12)
print(1-2)
print(1*2)
print(1/2)
print(1%2)
print(3//2)
print(2**2)2比较运算符
比较运算符的作用用于支持日常一些常用的比较运算。
比较运算符作用大于小于等于!不等于大于等于小于等于不等于
# 大于、小于、等于、不等于!、大于等于、小于等于、不等于,3.7版本已废弃
print(1 2)
print(1 2)
print(1 1)
print(1 ! 2)
print(1 2)
print(1 2)3赋值运算符
赋值运算符的作用用于设置值。
赋值运算符作用直接赋值将加后的结果赋值到自身-将减后的结果赋值到自身*将乘后的结果赋值到自身/将除后的结果赋值到自身//将取整除后的结果赋值到自身%将取模后的结果赋值到自身**将幂运算后的结果赋值到自身
a 1
print(a)
a 10
print(a)
a - 3
print(a)
a * 8
print(a)
a / 2
print(a)
a // 2
print(a)
a % 4
print(a)
a ** 2
print(a)4位运算符
程序中的所有数在计算机内存中都是以二进制的形式储存的。
位运算就是直接对整数在内存中的二进制位进行操作。
位运算符作用按位与运算符参与运算的两个值,如果两个相应位都为1,则该位的结果为1,否则为0。|按位或运算符只要对应的二个二进位有一个为1时结果位就为1。左移动运算符运算数的各二进位全部左移若干位由右边的数指定移动的位数高位丢弃低位补0。右移动运算符把“左边的运算数的各二进位全部右移若干位”右边的数指定移动的位数。~按位取反运算符对数据的每个二进制位取反,即把1变为0,把0变为1。^按位异或运算符当两对应的二进位相异时结果为1。
print(1 0)
print(1 1)
print(1 | 0)
print(0 | 0)
print(2 2)
print(2 2)
print(~1)
print(1 ^ 1)5逻辑运算符
逻辑运算符作用and表示与关系前后均成立为真。对于x and y,如果 x 为 Falsex and y 返回 x否则它返回 y 的计算值。or表示或关系前后只要一个为真即为真。对于 x or y x如果 x 是非它返回 x 的值否则它返回 y 的计算值。not表示非关系后面条件不成立时为真。对于not x如果 x 为 True返回 False 。如果x 为 False它返回 True。
print(True and False)
print(True or False)
print(not True)6成员运算符
成员运算符作用in表示在xxx里面not in表示不在xxx范围内is是xxxis not不是xxx
a abc
b ab
print(b in a)
print(b not in a)
print(b is ab)
print(b is not ab)**is 与 区别**is 用于判断两个变量引用对象是否为同一个 用于判断引用变量的值是否相等。
7运算符优先级
# 索引运算符 x[index] 或 x[index:index2[:index3]]
# 属性访问 x.attrbute
# 乘方 **
# 按位取反 ~
# 符号运算符 正号或 -负号
# 乘、除*、/、//、%
# 加、减 、-
# 位移 、
# 按位与
# 按位异或 ^
# 按位或 |
# 比较运算符 、!、、、、
# is 运算符 is、is not
# in 运算符 in、not in
# 逻辑非 not
# 逻辑与 and
# 逻辑或 or5.Python流程控制语句
1条件控制语句
条件语句是用来判断给定的条件是否满足(表达式值是否为0)并根据判断的结果(真或假)决定执行的语句选择结构就是用条件语句来实现的。
语法
if 条件:结果
elif 条件:结果
else结果# 假如判断成绩评级如果为90 分以上则为A80以上为B否则为C
score 89
if score 90:print(A)
elif score 80:print(B)
else:print(C)# 输出B2三元表达式
条件为真时的结果 if 条件判断 else 条件为假的结果转换为表达式如下x if x y else y
a 3
b 4
print(a if a b else b)# 输出43for循环语句
Python中for循环语句的基本语法如下
for var in eles:do something
else:do somethingvar 表示每个元素eles表示元素的集合else表示循环执行完成后的操作。
arr [1, 2, 3, 4, 5, 6, 7, 8, 9]
for var in arr:print(var)
else:print(循环执行完成)4while循环语句
while语句跟for循环语句类似均是在需要循环执行某些语句时使用while循环语句的具体语法
while condition:do somethingresult 0
while result 10:result 1
else:print(循环执行完成)while循环与else表示当while后面的条件不成立时执行else里的代码块。
5循环退出语句及其作用
在循环中当碰到某些特定的条件时要退出整个循环的时候可以使用break关键字退出循环。
for i in range(10):if i 5:breakelse:print(i, end )在循环中当碰到某个特定条件时想跳过当次循环可以使用continue关键字。
for i in range(10):if i 5:continueelse:print(i, end )6嵌套循环
在Python中与其他大多数语言一样是允许循环之间嵌套。
for var in eles:for var in eles:do something
do something# 打印9x9乘方表
for i in range(1, 10):for j in range(1, i1):print(i, *, j, , i*j, end )print()6.Python核心数据结构
1列表list
列表是一种数据项构成的有限序列即按照一定的线性顺序排列而成的数据项的集合在这种数据结构上进行的基本操作包括对元素的的查找插入和删除。
在Python中使用方括号[ ]表示列表[item,item,item,item,item,item,item]。
操作说明list.append(obj)在列表后面新增元素del list[i]删除元素len(list)求列表长度list[i]读取第i个元素list[-i]读取倒数第i个元素list[i,j]从第i个元素截取list.index(objc)从列表中找出某个值第一次出现的地方list.insert(i,obj)从第i个元素的位置插入元素list.pop(i)移除第i个元素并返回其值
eles [1, 2, 3, 4, 5, 6, 7, 8, 9]
eles.append(10)
print(eles)
del eles[0]
print(eles)
print(len(eles))
print(eles[5])
print(eles.index(5))
eles.insert(19, 2)
print(eles)
print(eles.pop(5))2集合set
在Python中使用大括号{ }或set()函数创建集合,如下{item,item…}
注意当我们要创建一个空集合的时候只能用set()进行创建因为{ }表示的是空的字典。
操作说明set.add(item)往集合里添加一个元素set.update(item)往集合中添加元素item是可迭代对象如列表、元组、字典set.remove(item)将元素item从集合set中移除如果元素不存在则发生错误set.discard(item)将元素item从集合set中移除如果元素不存在不会发生错误set.pop()随机取出并删除一个元素set.len()计算集合个数set.clear()清空集合union()取两个集合并集
eles {1, 2, 3}
print(eles)
eles set()
print(eles)
eles.add(10)
print(eles)
eles.update([1, 2, 3, 4])
print(eles)
eles.discard(3)
print(eles)
print(len(eles))
eles.pop()
print(eles)
eles.clear()
print(eles)3元组tuple
Python 的元组与列表非常相似不同之处在于元组的元素不能修改、整个元组也不能变动。
在Python中元组使用小括号( ),创建元组的时候只要在括号中添加相应的元素并使用逗号分隔即可如下
tup (1, 2, 3)注意当我们要创建一个只有一个元素的元组的时候在元素后面要加一个逗号如tup 1而不能使用(1)。
操作说明tup[i]获取第i个元素tup[-i]获取倒数第i个元素tup[i:j]从第i个元素起到第j个元素
tup (1, 2, 3)
print(tup[1])
for i in tup:print(i)
print(tup[-1])4字典dict
在Python中字典类型可存储任意类型对象它用于存放具有映射关系的数据。其映射关系通过key value的形式体现。在Python中使用keyvalue通过key:value的形式存在同样通过大括号{ }包裹每个键值对通过逗号分隔形式如下
{key1 : value1, key2 : value2 }在字典中key不能重复如果放入相同的key后者的值会覆盖前者 。
操作说明update({1,2})新增元素dict[‘key’]通过key获取对应的值如果没有对应的key会报错dict[‘key’] 123修改key的值del dict[‘key’]删除一个key及其对应的valuedel dict清空整个字典len(dict)字典元素个数
dict1 {name: lixiang, age: 18, sex: 1}
dict2 {address: 天津}
print(dict1)
print(dict1[name])
dict1[age] 20
print(dict1)
del dict1[sex]
print(dict1)
dict1.update(dict2)
print(len(dict1))5range
range() 函数返回的是一个可迭代对象类型是对象而不是列表类型 所以打印的时候不会打印列表。
range函数的基本语法
range(start,stop,step)
start: 计数从 start 开始。默认是从 0 开始。例如range5等价于range0 5;
stop: 计数到 stop 结束但不包括 stop。例如range0 5 是[0, 1, 2, 3, 4]没有5
step步长默认为1。例如range0 5 等价于 range(0, 5, 1)print(list(range(6)))
# 输出 [0, 1, 2, 3, 4, 5]
print(list(range(1,6)))
# 输出 [ 1, 2, 3, 4, 5]
print(list(range(1, 6, 2)))
# 输出 [ 1, 3, 5]
print(list(range(-11, -6)))
# 输出 [-11, -10, -9, -8, -7]
print(list(range(1, -6, -1)))
# 输出 [1, 0, -1, -2, -3, -4, -5]6可变对象与不可变对象
这里的可变与不可变是相对于内存里的那块地方是否可以改变通俗点讲就是内存中对应的地址在值。
发生变动的时候会不会变。地址不变时为可变对象变动时为不可变对象。
可变类型列表、字典
不可变类型数字、字符串、元组
a 1
print(id(a))
a a 1
print(id(a))# 输出
# 140734638482064
# 140734638482045a [1, 2, 3]
print(id(a))
a.append(4)
print(id(a))# 输出
# 2935304900885
# 2935304900885ok关于Python的核心基础知识我们就介绍到这里啦记得给博主三连哦