1 """
2 python程序的流程
3 """
4 # ------------- 分支结构----------------
5 # if else
6 import math
7
8 x = -37
9 if x < 0:
10 y = math.fabs(x)
11 else:
12 y = math.sqrt(x)
13 print("计算的结果是:", y)
14
15 # if...elif...else
16 # month = eval(input("请输入你选择的月份:")) # eval() 函数用来执行一个字符串表达式,并返回表达式的值
17 month = 12
18 days = 0
19
20 if (month == 1 or month == 3 or month == 5 or month == 7
21 or month == 8 or month == 10 or month == 12):
22 days = 31
23 elif month == 4 or month == 6 or month == 9 or month == 11:
24 days = 30
25 else:
26 days = 28
27 print("{}月份的天数为{}".format(month, days))
28
29 # 分支嵌套
30 flag = 1
31 books = 8
32 price = 234
33 Acp = 0
34
35 if flag == 1:
36 if books >= 5:
37 Acp = price * 0.75 * books
38 else:
39 Acp = price * 0.85 * books
40 else:
41 if books >= 5:
42 Acp = price * 0.85 * books
43 else:
44 Acp = price * 0.95 * books
45 print("你的实际付款金额是:", Acp)
46
47 # ------------循环结构---------------
48
49 # 遍历循环:for
50 '''
51 for <var> in <seq>:
52 <statements>
53 var是一个变量
54 seq是一个序列,可以是字符串、列表、文件或range()函数
55
56 range()函数
57 range(start,stop,[,step])
58 start:默认从0开始
59 stop:默认到stop结束,但不包括stop
60 step:默认为1
61 '''
62 # 计算1-100中能被3整除数之和
63 s = 0
64 for i in range(1, 101, 1):
65 if i % 3 == 0:
66 s += i
67 # print(i)
68 print(s)
69
70
71 # 计算 1!+2!+...+5!
72 def factorial(n):
73 t = 1
74 for v in range(1, n + 1):
75 t = t * v
76 return t
77
78
79 k = 6
80 sum1 = 0
81 for j in range(1, k):
82 sum1 += factorial(j)
83 print("1!+2!+...+5!=", sum1)
84
85 # 条件循环语句while
86 """
87 while <boolCondition>
88 <statements>
89 """
90
91 lst = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
92 head = 0
93 tail = len(lst) - 1
94 while head < len(lst) / 2: # TypeError: object of type 'type' has no len()/报错,需修改
95 lst[head], lst[tail] = lst[tail], lst[head] # 头尾互换?
96 """
97 也可以用下面语句来进行头尾互换
98 temp = list[head]
99 lst[head] = list[tail]
100 lst[tail] = temp
101 """
102 head += 1
103 tail -= 1
104
105 for item in lst:
106 print(item, end=' ')
107
108 # 用for循环改写
109 lst = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
110 head = 0
111 tail = len(lst) - 1
112 for head in range(0, int(len(lst) / 2)): # 因为range()函数的参数必须是整数,所以用int()函数进行了转换
113 lst[head], lst[tail] = lst[tail], lst[head] # 头尾互换?
114 """
115 也可以用下面语句来进行头尾互换
116 temp = list[head]
117 lst[head] = list[tail]
118 lst[tail] = temp
119 """
120 head += 1
121 tail -= 1
122
123 for item in lst:
124 print(item, end=' ')
125 print()
126
127 # ------------跳转语句----------------
128 """
129 break语句的作用是从循环体内跳出,及结束循环
130 """
131 a = 99
132 i = a // 2
133 while i > 0:
134 if a % i == 0:
135 break
136 i -= 1
137 print(a, "的最大真约数:", i)
138
139 """
140 continue语句必须用于循环结构中,它的作用是终止当前的这一轮循环,跳过本轮剩余的语句,直接进入下一循环
141 """
142 s = [-1, -2, -3, -4, 5, 6, 7, 8, 9]
143 for i in range(9):
144 if s[i] < 0:
145 continue
146 print("{}是正数".format(s[i]))
147
148 # 打印金字塔
149 # n = eval(input("请输入打印的行数"))
150 n = 5
151 for i in range(1, n + 1):
152 print(' ' * (n - i) + '*' * (2 * i - 1)) # 感觉这个print函数都够学的了

Python程序的流程的更多相关文章

  1. Python程序运行流程与垃圾回收机制

    Python程序运行流程 Python解释器首先将程序将py文件编译成一个字节码对象PyCodeObject(只存在于内存中).(当这个模块的 Python 代码执行完后,就会将编译结果保存到了pyc ...

  2. 用GDB排查Python程序故障

        某Team在用Python开发一些代码,涉及子进程以及设法消除僵尸进程的需求.实践中他们碰上Python程序非预期退出的现象.最初他们决定用GDB调试Python解释器,查看exit()的源头 ...

  3. 小议common lisp程序开发流程 - Ever 17 - 博客频道 - CSDN.NET

    小议common lisp程序开发流程 - Ever 17 - 博客频道 - CSDN.NET 小议common lisp程序开发流程 分类: lisp 2011-04-17 20:59 1316人阅 ...

  4. Python:使用Kivy将python程序打包为apk文件

    1.概述 Kivy是一套Python下的跨平台开源应用开发框架,官网,我们可以用 它来将Python程序打包为安卓的apk安装文件.以下是在windows环境中使用. 安装和配置的过程中会下载很多东西 ...

  5. Jenkins简明入门(二) -- 利用Jenkins完成Python程序的build、test、deployment

    大家可能还没搞清楚,Jenkins到底能做什么? 本节内容利用Jenkins完成python程序的build.test.deployment,让大家对Jenkins能做的事情有一个直观的了解. 本节内 ...

  6. 将Python 程序打包成 .exe格式入门

    PyInstaller PyInstaller 是一个十分有用的第三方库,可以用来打包 python 应用程序,打包完的程序就可以在没有安装 Python 解释器的机器上运行了. 它能够在 Windo ...

  7. 改善python程序的建议[转]

    <编写高质量代码 改善Python程序的91个建议> <编写高质量代码 改善Python程序的91个建议>读后程序学习小结 - BigDeng_2014的专栏 - CSDN博客 ...

  8. flask实战-留言板-Web程序开发流程

    Web程序开发流程 在实际的开发中,一个Web程序的开发过程要设计多个角色,比如客户(提出需求).项目经理(决定需求的实现方式).开发者(实现需求)等,在这里我们假设自己是一个人全职开发.一般来说一个 ...

  9. 月薪3万的python程序员都看了这本书

    想必大家都看过吧 Python编程从入门到实践 全书共有20章,书中的简介如下: 本书旨在让你尽快学会 Python ,以便能够编写能正确运行的程序 —— 游戏.数据可视化和 Web 应用程序,同时掌 ...

随机推荐

  1. CF1453D题解

    VP 的时候发现的一道数学题( 在思考这个问题之前,先让我们思考一件事:走到距离上一个存档点 \(n\) 的位置的期望是多少?(假设这个值为 \(f[n]\)) 先思考 \(f[1]\) 是多少,很明 ...

  2. CSS 选择器学习总结

    1.id 选择器 #idname{color:red;} 2.class选择器 .classname{} 3.标签选择器 div{} 4.通配符选择器 *{} 5. 属性选择器 [id]{ } 5.选 ...

  3. Java案例——猫与狗(接口版)

    一.需求:对猫跟狗进行训练,加入跳高功能,采用抽象类和接口实现,并创建测试类测试 二.分析: 1.定义接口(Jummping) 成员方法 跳高(): /*定义跳高接口 * */public inter ...

  4. 开源三轴云台EVVGC(simple BGC)分析

    一. 主程序分析 主程序结构清晰,流程如图所示,下面将对每个部分做详细分析 二. 系统初始化 系统初始化部分的流程如上图所示,下面对每部分做具体分析 1. 时钟初始化 该部分主要是使能DWT,用DWT ...

  5. CF1553X Harbour.Space Scholarship Contest 2021-2022 (Div. 1 + Div. 2)

    掉大分 E 对于一个序列,把它排回去的最小次数是 $\sum置换环大小-1=错位个数-置换环个数$ 注意到m小于等于n/3.那么最多修正2m个错位.正确位置的个数必须大于等于n/3才可能在m次内修正. ...

  6. Windows10与Centos7双系统安装踩的坑

    1. 首先安装windows(太简单不说了) 2.然后安装Centos7(太简单不说了) 3.注意:安装完Centos7重启电脑进入系统引导项突然发现没有Windows引导项 0x06 恢复Windo ...

  7. ES6中对象新增的方法

    属性的简洁表示法 ES6 允许在大括号里面直接写入变量和函数,作为对象的属性和方法.这样的书写更加简洁. const foo = 'bar'; const baz = { foo }; console ...

  8. springboot实现热部署的几种方式

    原理:使用了两个ClassLoader,一个Classloader加载那些不会改变的类(第三方Jar包),另一个ClassLoader加载会更改的类,称为restart ClassLoader,这样在 ...

  9. 如何确保消息正确地发送至 RabbitMQ? 如何确保消息接收方消费了消息?

    发送方确认模式 将信道设置成 confirm 模式(发送方确认模式),则所有在信道上发布的消息都 会被指派一个唯一的 ID. 一旦消息被投递到目的队列后,或者消息被写入磁盘后(可持久化的消息),信 道 ...

  10. memcached 的内存分配器是如何工作的?为什么不适用 malloc/free!?为何要使用 slabs?

    实际上,这是一个编译时选项.默认会使用内部的 slab 分配器.您确实确实应该 使用内建的 slab 分配器.最早的时候,memcached 只使用 malloc/free 来管理 内存.然而,这种方 ...