python for循环

python学习笔记之异常处理

非 Y 不嫁゛ 提交于 2020-02-02 05:42:29
目录 异常处理 异常处理 x = 10 try: y = int(input('数字:')) # 10 y += 10 # y = y + 10 except Exception as e: print(f'error: \033[1;35m {e} \033[0m!') finally: # 无论包不报错,都会执行finally下面的代码 print(1) 作业 使用while循环输出1 2 3 4 5 6 8 9 求1-100的所有数的和 输出 1-100 内的所有奇数 输出 1-100 内的所有偶数 求1-2+3-4+5 ... 99的所有数的和 用户登陆(三次机会重试) 猜年龄游戏 要求: 允许用户最多尝试3次,3次都没猜对的话,就直接退出,如果猜对了,打印恭喜信息并退出 猜年龄游戏升级版(选做) 要求: 允许用户最多尝试3次,每尝试3次后,如果还没猜对,就问用户是否还想继续玩,如果回答Y或y, 就继续让其猜3次,以此往复,如果回答N或n,就退出程序,如何猜对了,就直接退出 for循环打印99乘法表 for循环打印金字塔 # 题目1:使用while循环输出1 2 3 4 5 6 8 9 i=0 while i<10: i += 1 if(i==7): continue print(i) # 题目2:求1-100的所有数的和 s=0 for i in range(1,101)

《Python学习手册 第五版》 -第12章 if测试和语法规则

不羁岁月 提交于 2020-02-01 23:39:14
本章节的内容,主要讲解if语句,if语句是三大复合语句之一(其他两个是while和for),能处理编程中大多数逻辑运算 本章的重点内容如下: 1、if语句的基本形式(多路分支) 2、布尔表达式 3、if三元表达式 以下是针对重点内容的详细说明 1、if语句的基本形式 if语句是根据测试结果,从一些备选的操作中做出选择的语句,也就是说要先计算测试结果,再选择做什么,基本形式如下: if test1:   statements1 elif test2:   statements2 else:   statements3 根据这个基本形式,以下是具体代码示例: 其中需要再说明的,就是【elif】可以连续多个,会变成多路分支,如果感兴趣可以自己尝试一下 2、布尔表达式 因为if语句的一开始需要先计算结果,如果是【真】才会执行语句,所以这个地方的【真】,就涉及到布尔表达式,布尔运算符可以用很多丰富的形式结合多个测试结果,一般常用的有三种:and、or、not X and Y:只有X、Y两者都为真是,最后结果才为真 X or Y:只要X、Y有一个为真,最后结果才为真 not X:如果X为假,最后结果才为真 以上的说明会比较抽象,通过以下代码可以帮助理解: 这里没有全部列明,可以根据这个方式,其他的格式,可以自己敲代码试一下,通过自己敲击代码验证能加深印象和理解 3、if三元表达式

python学习笔记(三)---高级特性

有些话、适合烂在心里 提交于 2020-02-01 21:06:30
一、切片 取无数多个list元素 不用一个个取得笨方法就用切片 对这种经常取指定索引范围的操作,用循环十分繁琐,因此,Python提供了切片(Slice)操作符,能大大简化这种操作。 对应上面的问题,取前3个元素,用一行代码就可以完成切片: 记住倒数第一个元素的索引是 -1,第一个数的索引是0 #1.传统方法 L = ['Michael', 'Sarah', 'Tracy', 'Bob', 'Jack'] R = [] n=3 for i in range(n): R.append(L[i]) print( R ) #2 切片方法 print( L[0:3] ) print( L[:3] ) print( L[-2:] ) print( L[-2:-1] ) L = list(range(100)) print("前10个数") print ( L[:10]) print("\n前10个数 隔2个取1个数") print ( L[:10:2]) print("\n所有数,正向,每10个取一个数") print(L[::10]) print("后10个数") print(L[-10:]) print('直接定义取几个数') print ( 'ABCDEFG'[:3] ) print ( 'ABCDEFG'[::2] ) print((0, 1, 2, 3, 4, 5)[:3])

01_python基础语法

。_饼干妹妹 提交于 2020-02-01 19:48:39
python基础语法 一.基本数据类型 Number:数字 int: 整数 float: 浮点数 '2/2’得到的是一个浮点类型的结果,'2//2’得到的则是一个整型的结果;例如: 1/2=0.5 1//2=0 bool: 布尔类型,表示真(True)和假(False),布尔类型属于数字,可以通过int(True)和int(False)将布尔类型转化为数字,也可以通过bool方法将数字转换为bool类型,例如: int(True)=1 int(False)=0 bool(10)=True bool(1.3)=True bool(0)=False bool方法还可以用做非空判断: bool('abc')=True bool('')=False bool([1,2,3])=True bool([])=False bool({1,1,1})=True bool({})=False bool(None)=False complex: 复数 str:字符串,可以使用单引号,双引号和三引号表示字符串 获取一个字符的ascii码值: ord("a")=97 多行字符串:使用三引号定义多行字符串 原始字符串:r’str’,原始字符串不会去识别转义字符,而是将其原样去输出 字符串运算: +:把两个字符串拼接起来 *:例如’hello’*3,表示把’hello’这个字符串重复3次

SDUWH2019-2020寒假python实训--Chp4

心已入冬 提交于 2020-02-01 12:15:42
#len max min index find sort a=[1,2,5,3,2,4] print(len(a),a.__len__()) print(max(a),min(a)) print(a.index(2,2,5))#找到的第一个元素的索引,如果没有,报错 b='1232' print(b.find('2'))#找到的出现的第一个元素的索引,如果没有,返回-1 start_i = 0 for i in a: print(a.index(2,start_i)) start_i=a.index(2,start_i)+1 #判断后面的列表中是否具有该元素, 如果没有,则退出for循环 if not 2 in a[start_i:]: break; #退出循环 continue 退出本次循环 #条件判断 True False #== > < >= <= != in is is not # print(sum(a)) # a.sort(reverse=True) # print(a) # a.sort(reverse=False) # print(a) print(sorted(a))#sorted 公共方法 不改变原变量 #a.sort 该类的方法 改变原变量 print(a) print(a.count(2))#统计出现的次数 for i in range(a.__len__(

python Apriori算法1

蹲街弑〆低调 提交于 2020-02-01 04:23:18
#参考Link:https://www.jianshu.com/p/2ee0a247a8cc #创建一个数据集合 def loadDataSet ( ) : #return [[1,3,4],[2,3,5],[1,2,3,5],[2,5]] return apriori_metadata # 创建一项集 # 所有元素转换为不可变的字典,放到列表中 def createC1 ( dataSet ) : c1 = [ ] for trans in dataSet : for item in trans : if not [ item ] in c1 : c1 . append ( [ item ] ) c1 . sort ( ) # [1,2,3,4,5] return list ( map ( frozenset , c1 ) ) #[{1},{2},{3},{4},{5}] # 获取满足最小支持度的候选集与其支持度 # 过滤掉不符合支持度的集合 # 返回 频繁项集列表retList 所有元素的支持度字典 # D = [{1, 3, 4}, {2, 3, 5}, {1, 2, 3, 5}, {2, 5}] # Ck 是k项集 example:1-项集 [{1},{2},{3},{4},{5}] # minSupport最小支持度 def getSetAndSupport ( D ,

python创建数组

泪湿孤枕 提交于 2020-02-01 03:44:19
一维数组的创建: 可以直接创建 e = [0, 0, 0] 也可以用for循环创建 e = [0 for i in range(3)] [0, 0, 0] 二维数组的创建: 可以直接创建 e = [[0, 0], [0, 0], [0, 0]] 也可以用for循环创建 e = [[0] for i in range(3)] [[0], [0], [0]] 或者 e = [[0 for j in range(2)] for i in range(3)] [[0, 0], [0, 0], [0, 0]] 来源: CSDN 作者: 无名-- 链接: https://blog.csdn.net/qq_41657943/article/details/103603539

python零基础二

一曲冷凌霜 提交于 2020-02-01 01:55:08
""" 函数参数的分类: 1.位置参数 2.关键字参数 3.默认参数 4.可变参数 *args 可以给0,1,多个任意类型的实参 **kwargs 可以给0,1,多个键值对类型的实参 函数参数传递的方式: 实参->形参 值? 基本类型 在函数内操作,对源数据没有任何影响 地址? 可变类型 在函数内操作,源数据同样会发生改变 递归函数 直接或者间接调自己 递归本质: 压栈操作 栈的工作原理(弹夹原理:先进后出 FILO) 斐波那契数列 汉诺塔(课下查) 青蛙跳台阶 递归错误:栈溢出错误 命名空间: 分类: 内置 全局 globals() 局部 locals() 加载顺序: 内置 -> 全局 -> 局部 B G L 搜索顺序: 局部 -> 全局 -> 内置 L G B 作用域(LEGB) L: 局部 当前函数 E: 闭包 嵌套函数的内部函数中 G: 全局 当前文件中的所有函数 B: 内置 所有文件 """ a = 10 def func1 ( c = 10 ) : d = 20 print ( locals ( ) ) print ( a ) def func2 ( ) : x = 10 print ( x ) def func3 ( ) : print ( a ) # print(globals()) print ( __name__ ) print ( __file__ )

【Python】Python之切片操作

烈酒焚心 提交于 2020-02-01 01:47:15
【Python】Python之切片操作 今日份 Python 是对 切片 知识的学习,话不多说,直接上货。 对list进行切片操作 在Python代码编写中,取一个list的部分元素是非常常见的操作。比如创建一个 list ,我们要取 list 的前三个元素,需要怎么做呢,按照我们之前所学的应该是这样 : L = [ 'apple' , 'boy' , 'cat' , 'dog' , 'egg' ] print ( L [ 0 ] , L [ 1 ] , L [ 2 ] ) 而这种方法在面对取前 n 个元素的情况下,就不大合适了,所以我们可以找一种较为高效的方法取值——函数。 取前n个元素,也就是索引为 0——(n-1) 的元素,使用循环方法代码如下: L = [ 'apple' , 'boy' , 'cat' , 'dog' , 'egg' ] r = [ ] n = 3 for i in range ( n ) : r . append ( L [ i ] ) print ( r ) 对这种经常取指定索引范围的操作,使用循环也是十分繁琐的,因此 Python 提供了切片(Slice)操作符,能大大简化这种操作。 对应上面的问题,我们取前3个元素,用一行代码就可以完成切片: L = [ 'apple' , 'boy' , 'cat' , 'dog' , 'egg' ] print

Python版[leetcode]1. 两数之和

瘦欲@ 提交于 2020-02-01 00:57:50
给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。 你可以假设每种输入只会对应一个答案。但是,你不能重复利用这个数组中同样的元素。 示例: 给定 nums = [2, 7, 11, 15], target = 9 因为 nums[0] + nums[1] = 2 + 7 = 9 所以返回 [0, 1] 一开始我的想法是直接用2个for循环遍历nums,用当前数和当前数之后的所有数求和,如果和target相同就直接返回当前索引数组 class Solution: def twoSum(self, nums: List[int], target: int) -> List[int]: for i in range(len(nums)): for j in range(i+1,len(nums)): if nums[i]+ nums[j] == target: return [i,j] 但是这种算法时间复杂度是 O(n 2 ),耗时很长,所以后来我参考了使用字典的方法: class Solution: def twoSum(self, nums: List[int], target: int) -> List[int]: """ :type nums: List[int] :type target: int