一、Python介绍
Python是一个计算编程语言,可以实现计算程序开发,也可以用于数据处理。SQL语言只能用于结构化数据的处理。Python的比SQL应用更广泛。
1990年推广Python,最初是应用于运维开发,随着不断更新迭代Python的功能更加丰富,在更多场景中进行使用。
Python的特点简单易学
Welcome to Python.org
Python的应用场景
主要是使用Python各类模块进行相关功能开发
-
网站Web开发
-
Django,Flask,FastAPI等模块
-
-
开发游戏
-
Pygame模块(小游戏)
-
-
人工智能
-
NLP自然语言处理和CV视觉处理
-
主要使用机器学习算法完成
-
PyTorch模块 TensorFlow模块 opencv模块
-
-
-
大数据开发
-
pyspark 开发spark程序
-
pyflink 开发flink程序
-
hdfs模块 操作hdfs
-
-
数据采集
-
requests模块
-
scrapy 模块
-
-
测试开发
-
pytest
-
-
运维开发
-
Ansible
-
-
物联网
-
GPIO模块配合树莓派使用
-
二、Python及开发工具安装
2-1 Python安装
Python解释器就是将Python代码翻译成计算机能识别的信息数据
Welcome to Python.org
方式二 使用微软商城
2-2 开发方式
-
交互式开发
-
输入一行代返回一行结果
-
一旦关闭交互窗口代码就会清除掉,不适合项目开发
-
一般用来进行代码的测试或函数的使用测试
-
-
脚本式开发
-
项目开发需要使用脚本(文件)方式开发代码
-
将代码写入一个以py结尾的Python文件,然后使用指令执行文件
-
第一步 编写python文件 print(1+1)
第二步 找到文件位置
第三步 使用指令运行 python 文件
2-3 Pycharm开发工具安装
JetBrains:为专业人士和团队制作开发者工具
https://www.jetbrains.com.cn/company/commitment/
SFXUSA86FM-eyJsaWNlbnNlSWQiOiJTRlhVU0E4NkZNIiwibGljZW5zZWVOYW1lIjoi5pyd6Zm956eR5oqA5aSn5a24IiwibGljZW5zZWVUeXBlIjoiQ0xBU1NST09NIiwiYXNzaWduZWVOYW1lIjoiVGFvYmFv77ya5p6B5a6i5LiT5LqrICAtLS0g6LCo6Ziy55uX5Y2W77yBIiwiYXNzaWduZWVFbWFpbCI6IktyaXN0YW5fQmxvd2VAb3V0bG9vay5jb20iLCJsaWNlbnNlUmVzdHJpY3Rpb24iOiJGb3IgZWR1Y2F0aW9uYWwgdXNlIG9ubHkiLCJjaGVja0NvbmN1cnJlbnRVc2UiOmZhbHNlLCJwcm9kdWN0cyI6W3siY29kZSI6IkdPIiwicGFpZFVwVG8iOiIyMDI1LTAyLTE5IiwiZXh0ZW5kZWQiOmZhbHNlfSx7ImNvZGUiOiJSUzAiLCJwYWlkVXBUbyI6IjIwMjUtMDItMTkiLCJleHRlbmRlZCI6ZmFsc2V9LHsiY29kZSI6IkRNIiwicGFpZFVwVG8iOiIyMDI1LTAyLTE5IiwiZXh0ZW5kZWQiOmZhbHNlfSx7ImNvZGUiOiJDTCIsInBhaWRVcFRvIjoiMjAyNS0wMi0xOSIsImV4dGVuZGVkIjpmYWxzZX0seyJjb2RlIjoiUlNVIiwicGFpZFVwVG8iOiIyMDI1LTAyLTE5IiwiZXh0ZW5kZWQiOmZhbHNlfSx7ImNvZGUiOiJSU0MiLCJwYWlkVXBUbyI6IjIwMjUtMDItMTkiLCJleHRlbmRlZCI6dHJ1ZX0seyJjb2RlIjoiUEMiLCJwYWlkVXBUbyI6IjIwMjUtMDItMTkiLCJleHRlbmRlZCI6ZmFsc2V9LHsiY29kZSI6IkRTIiwicGFpZFVwVG8iOiIyMDI1LTAyLTE5IiwiZXh0ZW5kZWQiOmZhbHNlfSx7ImNvZGUiOiJSRCIsInBhaWRVcFRvIjoiMjAyNS0wMi0xOSIsImV4dGVuZGVkIjpmYWxzZX0seyJjb2RlIjoiUkMiLCJwYWlkVXBUbyI6IjIwMjUtMDItMTkiLCJleHRlbmRlZCI6ZmFsc2V9LHsiY29kZSI6IlJTRiIsInBhaWRVcFRvIjoiMjAyNS0wMi0xOSIsImV4dGVuZGVkIjp0cnVlfSx7ImNvZGUiOiJSTSIsInBhaWRVcFRvIjoiMjAyNS0wMi0xOSIsImV4dGVuZGVkIjpmYWxzZX0seyJjb2RlIjoiSUkiLCJwYWlkVXBUbyI6IjIwMjUtMDItMTkiLCJleHRlbmRlZCI6ZmFsc2V9LHsiY29kZSI6IkRQTiIsInBhaWRVcFRvIjoiMjAyNS0wMi0xOSIsImV4dGVuZGVkIjpmYWxzZX0seyJjb2RlIjoiREIiLCJwYWlkVXBUbyI6IjIwMjUtMDItMTkiLCJleHRlbmRlZCI6ZmFsc2V9LHsiY29kZSI6IkRDIiwicGFpZFVwVG8iOiIyMDI1LTAyLTE5IiwiZXh0ZW5kZWQiOmZhbHNlfSx7ImNvZGUiOiJQUyIsInBhaWRVcFRvIjoiMjAyNS0wMi0xOSIsImV4dGVuZGVkIjpmYWxzZX0seyJjb2RlIjoiUlNWIiwicGFpZFVwVG8iOiIyMDI1LTAyLTE5IiwiZXh0ZW5kZWQiOnRydWV9LHsiY29kZSI6IldTIiwicGFpZFVwVG8iOiIyMDI1LTAyLTE5IiwiZXh0ZW5kZWQiOmZhbHNlfSx7ImNvZGUiOiJQU0kiLCJwYWlkVXBUbyI6IjIwMjUtMDItMTkiLCJleHRlbmRlZCI6dHJ1ZX0seyJjb2RlIjoiUENXTVAiLCJwYWlkVXBUbyI6IjIwMjUtMDItMTkiLCJleHRlbmRlZCI6dHJ1ZX0seyJjb2RlIjoiUlMiLCJwYWlkVXBUbyI6IjIwMjUtMDItMTkiLCJleHRlbmRlZCI6dHJ1ZX0seyJjb2RlIjoiRFAiLCJwYWlkVXBUbyI6IjIwMjUtMDItMTkiLCJleHRlbmRlZCI6dHJ1ZX0seyJjb2RlIjoiUERCIiwicGFpZFVwVG8iOiIyMDI1LTAyLTE5IiwiZXh0ZW5kZWQiOnRydWV9XSwibWV0YWRhdGEiOiIwMTIwMjQwMjI2TFBBQTAwMzAwOCIsImhhc2giOiI1NDY4ODAyOS8yNTk5OTU2NTotMTQ5MzMwODg5NSIsImdyYWNlUGVyaW9kRGF5cyI6NywiYXV0b1Byb2xvbmdhdGVkIjpmYWxzZSwiaXNBdXRvUHJvbG9uZ2F0ZWQiOmZhbHNlLCJ0cmlhbCI6ZmFsc2UsImFpQWxsb3dlZCI6dHJ1ZX0=-JDVXZeZnNxn5sMQEXZ2TOZlrMOVI37CPE25JugHcDUdJPc75u4D+IEwoFl1GRB8GKrIhSwJa6OhgHpyXyMqLXtroe/p+qWo6kLi86iTuXpK+E4UQPQP9X9cZTxgupD4py7/Pps4qeuwiWIsbESoDDxRsuivhh1xka8lfJHoPDMwdV7DNjRFUUFpJrDr7KYp5zGRFU9hIUfh8YzZ0lQTAzboQyUwMoTRRiUOM5hs/2/RG6VA1gPaeqRaE6v0nphHTZ6By3Zvs5tj9qh6iW07jtXTxXk0MDzNrQpMh2MUvPB0dikKjDMxgUKFGEiDKvFilZJ+y0ErfdFekBn+mfInr0Q==-MIIETDCCAjSgAwIBAgIBDzANBgkqhkiG9w0BAQsFADAYMRYwFAYDVQQDDA1KZXRQcm9maWxlIENBMB4XDTIyMTAxMDE2MDU0NFoXDTI0MTAxMTE2MDU0NFowHzEdMBsGA1UEAwwUcHJvZDJ5LWZyb20tMjAyMjEwMTAwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC/W3uCpU5M2y48rUR/3fFR6y4xj1nOm3rIuGp2brELVGzdgK2BezjnDXpAxVDw5657hBkAUMoyByiDs2MgmVi9IcqdAwpk988/Daaajq9xuU1of59jH9eQ9c3BmsEtdA4boN3VpenYKATwmpKYkJKVc07ZKoXL6kSyZuF7Jq7HoQZcclChbF75QJPGbri3cw9vDk/e46kuzfwpGftvl6+vKibpInO6Dv0ocwImDbOutyZC7E+BwpEm1TJZW4XovMBegHhWC04cJvpH1u98xoR94ichw0jKhdppywARe43rGU96163RckIuFmFDQKZV9SMUrwpQFu4Z2D5yTNqnlLRfAgMBAAGjgZkwgZYwCQYDVR0TBAIwADAdBgNVHQ4EFgQU5FZqQ4gnVc+inIeZF+o3ID+VhcEwSAYDVR0jBEEwP4AUo562SGdCEjZBvW3gubSgUouX8bOhHKQaMBgxFjAUBgNVBAMMDUpldFByb2ZpbGUgQ0GCCQDSbLGDsoN54TATBgNVHSUEDDAKBggrBgEFBQcDATALBgNVHQ8EBAMCBaAwDQYJKoZIhvcNAQELBQADggIBANLG1anEKid4W87vQkqWaQTkRtFKJ2GFtBeMhvLhIyM6Cg3FdQnMZr0qr9mlV0w289pf/+M14J7S7SgsfwxMJvFbw9gZlwHvhBl24N349GuthshGO9P9eKmNPgyTJzTtw6FedXrrHV99nC7spaY84e+DqfHGYOzMJDrg8xHDYLLHk5Q2z5TlrztXMbtLhjPKrc2+ZajFFshgE5eowfkutSYxeX8uA5czFNT1ZxmDwX1KIelbqhh6XkMQFJui8v8Eo396/sN3RAQSfvBd7Syhch2vlaMP4FAB11AlMKO2x/1hoKiHBU3oU3OKRTfoUTfy1uH3T+t03k1Qkr0dqgHLxiv6QU5WrarR9tx/dapqbsSmrYapmJ7S5+ghc4FTWxXJB1cjJRh3X+gwJIHjOVW+5ZVqXTG2s2Jwi2daDt6XYeigxgL2SlQpeL5kvXNCcuSJurJVcRZFYUkzVv85XfDauqGxYqaehPcK2TzmcXOUWPfxQxLJd2TrqSiO+mseqqkNTb3ZDiYS/ZqdQoGYIUwJqXo+EDgqlmuWUhkWwCkyo4rtTZeAj+nP00v3n8JmXtO30Fip+lxpfsVR3tO1hk4Vi2kmVjXyRkW2G7D7WAVt+91ahFoSeRWlKyb4KcvGvwUaa43fWLem2hyI4di2pZdr3fcYJ3xvL5ejL3m14bKsfo
三、代码注释
1-将不需要执行的代码进行注释,在运行文件是可以不执行
2-对编写的代码内容进行说明
-
使用格式
第一种方式使用井号 # 第一个注释 第二种方式 使用引号注释 '单引号的注释' "双引号注释" ''' 三个引号注释 '''
# 第一个注释 ' 这是一个单引号注释 ' " 这是一个双引号注释 " ''' 这是三个引号注释 ''' # print('hello world') "print('hello world')" ''' 三个引号可以换行注释 第一行内容 第二行内容 第三行内容 ''' print('hello flink') # 使用快捷键 ctrl+/
井号注释最常用
四、变量和类型
数据类型
1 整数
3.14 小数
'张三' 字符串
2023-14-15 日期
使用变量声明保存数据,说明数据的含义,相当于给数据指定了一个名字
1 15 28
age = 1
weight = 15
height = 28
-
变量定义
变量名=值 name='张三' age=20
-
使用变量
# 变量使用 # 1-定义变量 id = 1 age = 20 name = '张三' # 2-使用变量 print(age) # 通过变量可以获取变量对应的值 print(name) # 变量传值(赋值) user_name = name print(user_name) # 修改变量的值 user_name = '李四' print(user_name)
-
数据类型
-
1 整数 python中使用int
3.14 小数 python中使用float
'张三' 字符串 python中使用str
2023-14-15 日期 python中使用datetime
-
Python会自动判断数据的类型
-
变量是什么类型由数据决定
-
# 数据类型说明 age = 20 height = 175.20 name = '张三' # 使用type方法查看数据的类型 print(type(age)) print(type(height)) print(type(name)) # 通过数据类型来确认数据与数据之间能否进行计算 print(age + height) # print(age + name) # int和str类型之间不能相加
-
数据类型转化
# 类型转化 data_int = 10 data_float = 3.64 data_str = '张三' data_str2 = '25' # 字符串的数字 # int 和float之间转化 print(float(data_int)) # 将int转为float print(int(data_float)) # 将float转为int 取整数部分,不会四舍五入 # int 和str之间 data = str(data_int) # data变量接收 转化后的数据 print(data) # 将int类型转为字符串 print(type(data)) # 将int类型转为字符串 # data2 = int(data_str) # 非数字的字符串不能转为int类型 data3 = int(data_str2) # 数字的字符串能转为int类型 print(data3) print(type(data3)) # 在实际开发中对字符串的数字计算时,需要转为int类型或float类型 print(data_int+int(data_str2)) # 数字的字符串转为float data4 = float(data_str2) print(data4)
五、标识符和关键字
标识符:对代码内容进行声明,相当指定一个名字
变量名,函数名,类名都是Python中的标识符
变量 可以表示数据
函数名 可以表示一段代码逻辑
类名 将变量和函数封装在一起,形成一个整体,命名一个名字
定义标识符时要避免和python的关键字冲突
关键字就是每种开发语言自己的命名
SQL关键字 select from group by order by 等 在定义表或库时避免使用关键字
Python中的关键字
-
标识符命名规则
-
驼峰命名
-
大驼峰
-
首字母大写 username --- > UserName
-
定义类时使用
-
-
-
下划线
-
全部小写形式
-
多个单词之间使用下划线拼接 username --- > user_name
-
变量名,文件名,函数名
-
-
不同公司有自己的命名规范
-
项目_变量名 itcast_name
-
-
命名规则不是强制要求根据公司实际需求定义
-
asd=10 a123=123 a_123 =123
标识符在定义时,首个字符必须是字母,后面的可写数字和下划线
六、输入和输出
输入:将数据传递给Python程序
输出:Python程序将数据结果展示
-
输入方法
-
终端输入方法
-
input()
-
-
-
输出方法
-
输出终端
-
print()
-
-
输入数据
-
数据输入
# 输入数据的方法input # input(提示信息) data = input('请输入数据:') # data就是接收用户输入的数据 # 将接收的数据输出 print(data) print(type(data)) # 计算数据时需要对输入的数据进行类型转化,可以转为float类型 print(float(data)+10)
-
input()对输入的数据全部转为字符串数据,所以在操作输入数据时需要注意类型
输出数据
-
换行输出
# 数据输出 # print输出 # print默认会自动换行输出结果 print(' 咏雪') print('作者 郑板桥') print('一片两片三四片,') print('五六七八九十片,') print('千片万片无数片,') print('飞入梅花都不见。') # 一个print输出多行数据,使用 \n 字符,当print识别到\n时,会自动换行 print(' 咏鹅\n 作者 骆宾王\n 鹅鹅鹅,曲项向天歌\n 白毛浮绿水,红掌拨清波') # 将多行输出,合并一行输出 print(' 咏雪') print('作者 张宗昌') print('什么东西天上飞,',end='') # end='' 指定不进行换行 print('东一堆来西一堆。') print('莫非玉皇盖金殿,',end='') print('筛石灰呀筛石灰。')
-
格式化输出
-
当输出的数据有固定格式时,可以使用模版进行格式化输出
-
# 格式化输出 print('我叫张三,年龄20岁,体重75.52kg') print('我叫李四,年龄22岁,体重70.50kg') print('我叫王五,年龄22岁,体重65.22kg') # 对固定输出内容,使用格式化输出,将需要变更的数据定义成变量,然后对变量进行输出 name = '赵六' age = 35 weight = 85.82 # %s 是占位符,将来变量数据会替换到该位置,同时也声明了数据类型时字符串 # %d 用来表示整数数据 # %f 用来表示小数数据 %.2f 表示保留两位小数 print('我叫%s,年龄%d岁,体重%fkg'%(name,age,weight)) print('我叫%s,年龄%d岁,体重%.2fkg'%(name,age,weight)) # 实际开发使用更简便方式 # 字符串前面加f 会自动调用format方法 print(f'我叫{name},年龄{age}岁,体重{weight}kg') print(f'我叫{name},年龄{age}岁,体重{weight:.3f}kg')
-
多个变量输出
# 输出多个变量值 name = '赵六' age = 35 weight = 85.82 print(name) print(age) print(name,age,weight)
七、运算符
7-1 数值类型的运算符
数值类型的计算,可以使用不同的运算符完成计算
# 运算符 # 数值类型的算数运算符 int和float类型计算 # + - * / // % ** data1 = 1 data2 = 2 res = data1 + data2 res2 = data1 - data2 res3 = data1 / data2 res4 = data1 * data2 print(f'+ 加法计算:{res}') print(f'- 减法计算:{res2}') print(f'/ 除法计算:{res3}') print(f'* 乘法计算:{res4}') res5 = data1 // data2 print(f'// 相除取整数计算:{res5}') res6 = data1 % data2 print(f'% 相除取余数计算:{res6}') res7 = data1 ** data2 print(f'** 次方计算 :{res7}')
7-2 字符串数据的运算符
+
: 表时两个字符串进行数据拼接 str+str+str
*
: 表示字符串数据的复制 str*int 复制多个个,由int的数量决定
date_str1 = 'itcast' date_str2 = 'python' # + 字符串拼接 res8 = date_str1+','+date_str2 print(res8) # * 字符串复制 res9 = date_str1 * 3 print(res9)
八、条件判断
对数据进行判断,符合条件的进行处理,不符条件进行其他处理
SQL中条件判断的方法
if(字段判断条件,成立返回值,不成立返回值)
case when 条件1 then 符合条件的返回值 when 条件2 then 返回 else 返回值 end
pytho中的条件判断方法
if 判断条件
if 判断条件 else 不符合的
if 判断条件1 elif 判断条件2 elif 判断条件3 else 都不符合的
条件的与或非
SQL和Python关键字一样 and or not
-
Python中的条件判断语法格式
-
条件成立的代码要想执行,需要前面有四个空格,可以使用tab键直接生成4个空格,pycharm中会自动增加4个空格
-
# 一个判断逻辑 if 判断条件: 条件成立执行的代码 # 执行成立和不成立两种情况 if 判断条件: 条件成立执行的代码 else: 条件不成立执行的代码 # 多个条件判断 if 判断条件1: 条件1成立执行的代码 elif 判断条件2: 条件2成立执行的代码 elif 判断条件3: 条件3成立执行的代码 else: 条件不成立执行的代码
-
单个if判断
-
只需要判断条件成立的情况可以只使用if
-
# 当个if条件判断 # == 判断两个值是否相等 if 1==1: # 条件成立执行对应逻辑 print('条件成立') if 1>1: # 条件成立执行对应逻辑 print('条件成立') # 实际开发中都是对变量数据进行判断 password = '654321' if password == '654321': print('密码正确') # 多条件的与或非 # 用户输入的数据 name= '张三' password = '654321' if name== '张三' and password=='654321': print("验证成功")
-
if else:
-
判断成立和不成立的两种情况
-
# 用户输入的数据 name= input('请输入用户名:') password = input('请输入密码:') if name == '张三' and password=='123456': print("验证通过") else: print('验证未通过')