《PYTHON3 经典50案例》由会员分享,可在线阅读,更多相关《PYTHON3 经典50案例(50页珍藏版)》请在金锄头文库上搜索。
1、PYTHON3从菜鸟到高手 经典实例与语法总结 题目1 有四个数字 1 2 3 4 能组成多少个互不相同且无重复数字的三位数 各是多少 foriinrange 1 5 forjinrange 1 5 forkinrange 1 5 if i k and i j and j k print i j k 123124132134142143213214231234241243312314321324341342412413421423431432 题目2 企业发放的奖金根据利润提成 利润 I 低于或等于10万元时 奖金可提10 利润高于10万元 低于20万元时 低于10万元的部分按10 提成 高于
2、10万元的部分 可提成7 5 20万到40万之间时 高于20万元的部分 可提成5 40万到60万之间时高于40万元的部分 可提成3 60万到100万之间时 高于60万元的部分 可提成1 5 高于100万元时 超过100万元的部分按1 提成 从键盘输入当月利润I 求应发放奖金总数 i int input 净利润 arr 1000000 600000 400000 200000 100000 0 rat 0 01 0 015 0 03 0 05 0 075 0 1 r 0foridxinrange 0 6 ifi arr idx r i arr idx rat idx print i arr id
3、x rat idx i arr idx print r 净利润 1200001500 010000 011500 0 题目3 一个整数 它加上100后是一个完全平方数 再加上168又是一个完全平方数 请问该数是多少 foriinrange 1 85 if168 i 0 j 168 i ifi jand i j 2 0and i j 2 0 m i j 2n i j 2x n n 100print x 99212611581 题目4 输入某年某月某日 判断这一天是这一年的第几天 标准数据类型 Python3中有六个标准的数据类型 Number 数字 String 字符串 List 列表 Tupl
4、e 元组 Set 集合 Dictionary 字典 Python3的六个标准数据类型中 不可变数据 3个 Number 数字 String 字符串 Tuple 元组 可变数据 3个 List 列表 Dictionary 字典 Set 集合 Number 数字 Python3支持int float bool complex 复数 在Python3里 只有一种整数类型int 表示为长整型 没有python2中的Long 像大多数语言一样 数值类型的赋值和计算都是很直观的 内置的type 函数可以用来查询变量所指的对象类型 a b c d 20 5 5 True 4 3j print type a
5、type b type c type d 注意 1 Python可以同时为多个变量赋值 如a b 1 2 2 一个变量可以通过赋值指向不同类型的对象 3 数值的除法包含两个运算符 返回一个浮点数 返回一个整数 4 在混合计算时 Python会把整型转换成为浮点数 String 字符串 Python中的字符串用单引号 或双引号 括起来 同时使用反斜杠 转义特殊字符 字符串的截取的语法格式如下 变量 头下标 尾下标 str runoob print str 输出字符串print str 0 1 输出第一个到倒数第二个的所有字符print str 0 输出字符串第一个字符print str 2 5
6、输出从第三个开始到第五个的字符print str 2 输出从第三个开始的后的所有字符print str 2 输出字符串两次print str TEST 连接字符串 runoobrunoornoonoobrunoobrunoobrunoobTEST 注意 1 反斜杠可以用来转义 使用r可以让反斜杠不发生转义 2 字符串可以用 运算符连接在一起 用 运算符重复 3 Python中的字符串有两种索引方式 从左往右以0开始 从右往左以 1开始 4 Python中的字符串不能改变 List 列表 是Python中使用最频繁的数据类型 列表可以完成大多数集合类的数据结构实现 列表中元素的类型可以不相同 它
7、支持数字 字符串甚至可以包含列表 所谓嵌套 列表是写在方括号 之间 用逗号分隔开的元素列表 和字符串一样 列表同样可以被索引和截取 列表被截取后返回一个包含所需元素的新列表 列表截取的语法格式如下变量 头下标 尾下标 list abcd 786 2 23 runoob 70 2 tinylist 123 runoob print list 输出完整列表print list 0 输出列表第一个元素print list 1 3 从第二个开始输出到第三个元素print list 2 输出从第三个元素开始的所有元素print tinylist 2 输出两次列表print list tinylist 连
8、接列表 abcd 786 2 23 runoob 70 2 abcd 786 2 23 2 23 runoob 70 2 123 runoob 123 runoob abcd 786 2 23 runoob 70 2 123 runoob 注意 1 List写在方括号之间 元素用逗号隔开 2 和字符串一样 list可以被索引和切片 3 List可以使用 操作符进行拼接 4 List中的元素是可以改变的 Tuple 元组 元组 tuple 与列表类似 不同之处在于元组的元素不能修改 元组写在小括号 里 元素之间用逗号隔开 元组中的元素类型也可以不相同 tuple abcd 786 2 23 ru
9、noob 70 2 tinytuple 123 runoob print tuple 输出完整元组print tuple 0 输出元组的第一个元素print tuple 1 3 输出从第二个元素开始到第三个元素print tuple 2 输出从第三个元素开始的所有元素print tinytuple 2 输出两次元组print tuple tinytuple 连接元组 abcd 786 2 23 runoob 70 2 Abcd 786 2 23 2 23 runoob 70 2 123 runoob 123 runoob abcd 786 2 23 runoob 70 2 123 runoob
10、 注意 1 与字符串一样 元组的元素不能修改 2 元组也可以被索引和切片 方法一样 3 注意构造包含0或1个元素的元组的特殊语法规则 4 元组也可以使用 操作符进行拼接 Set 集合 集合 set 是由一个或数个形态各异的大小整体组成的 构成集合的事物或对象称作元素或是成员 基本功能是进行成员关系测试和删除重复元素 可以使用大括号 或者set 函数创建集合 注意 创建一个空集合必须用set 而不是 因为 是用来创建一个空字典 创建格式 parame value01 value02 或者set value student Tom Jim Mary Tom Jack Rose print stud
11、ent 输出集合 重复的元素被自动去掉 成员测试if Rose instudent print Rose在集合中 else print Rose不在集合中 set可以进行集合运算a set abracadabra b set alacazam print a print a b a和b的差集print a b a和b的并集print a b a和b的交集print a b a和b中不同时存在的元素 Mary Jim Rose Jack Tom Rose在集合中 b a c r d b d r l r a c z m b d a c l r z m b d Dictionary 字典 字典 di
12、ctionary 是Python中另一个非常有用的内置数据类型 列表是有序的对象集合 字典是无序的对象集合 两者之间的区别在于 字典当中的元素是通过键来存取的 而不是通过偏移存取 字典是一种映射类型 字典用 标识 它是一个无序的键 key 值 value 的集合 键 key 必须使用不可变类型 在同一个字典中 键 key 必须是唯一的 dict dict one 1 菜鸟教程 dict 2 2 菜鸟工具 tinydict name runoob code 1 site print dict one 输出键为 one 的值print dict 2 输出键为2的值print tinydict 输出
13、完整的字典print tinydict keys 输出所有键print tinydict values 输出所有值 1 菜鸟教程2 菜鸟工具 name runoob code 1 site dict keys name code site dict values runoob 1 注意 1 字典是一种映射类型 它的元素是键值对 2 字典的关键字必须为不可变类型 且不能重复 3 创建空字典使用 数字求和 用户输入数字num1 input 输入第一个数字 num2 input 输入第二个数字 求和sum float num1 float num2 显示计算结果print 数字 0 和 1 相加结果
14、为 2 format num1 num2 sum 平方根 num float input 请输入一个数字 num sqrt num 0 5print 0 3f的平方根为 0 3f num num sqrt 二次方程 二次方程式ax 2 bx c 0 a b c用户提供 为实数 a 0 导入cmath 复杂数学运算 模块importcmatha float input 输入a b float input 输入b c float input 输入c 计算d b 2 4 a c 两种求解方式sol1 b cmath sqrt d 2 a sol2 b cmath sqrt d 2 a print 结
15、果为 0 和 1 format sol1 sol2 计算三角形的面积 a float input 输入三角形第一边长 b float input 输入三角形第二边长 c float input 输入三角形第三边长 计算半周长s a b c 2 计算面积area s s a s b s c 0 5print 三角形面积为 0 2f area 计算圆的面积 定义一个方法来计算圆的面积deffindArea r PI 3 142returnPI r r 调用方法print 圆的面积为 6f findArea 5 随机数生成 生成0 9之间的随机数 导入random 随机数 模块importrando
16、mprint random randint 0 9 摄氏度和华氏度相互转换 a input 请输入带有符号的温度值 ifa 1 in F f C eval a 0 1 32 1 8print 转换后的温度是 1f C format C elifa 1 in C c F 1 8 eval a 0 1 32print 转换后的温度是 1f F format F else print 输入格式错误 九九乘法表 九九乘法表foriinrange 1 10 forjinrange 1 i 1 print x t format j i i j end print 通过指定end参数的值 可以取消在末尾输出回车符 实现不换行 usr bin python3importsmtplibfromemail mime textimportMIMETextfromemail utilsimportformataddrmy sender 178795275 发件人邮箱账号my pass 88888888 发件人邮箱密码my user LiRui03 收件人邮箱账号 我这边发送给自己defmail ret Tru