随笔分类 -  Python 学习

摘要:1、基于字典的创建规划问题 上篇中介绍了使用 LpVariable 对逐一定义每个决策变量,设定名称、类型和上下界,类似地对约束条件也需要逐一设置模型参数。在大规模的规划问题中,这样逐个定义变量和设置模型参数非常繁琐,效率很低。Pulp 库提供了一种快捷方式,可以结合 Python语言的循环和容器, 阅读全文
posted @ 2021-04-30 20:46 youcans 阅读(3410) 评论(0) 推荐(1) 编辑
摘要:1、什么是线性规划 线性规划(Linear programming),在线性等式或不等式约束条件下求解线性目标函数的极值问题,常用于解决资源分配、生产调度和混合问题。例如: max fx = 2*x1 + 3*x2 - 5*x3 s.t. x1 + 3*x2 + x3 <= 12 2*x1 - 5* 阅读全文
posted @ 2021-04-28 14:48 youcans 阅读(5190) 评论(0) 推荐(1) 编辑
摘要:1、最优化问题建模 最优化问题的三要素是决策变量、目标函数和约束条件。 (1)分析影响结果的因素是什么,确定决策变量 (2)决策变量与优化目标的关系是什么,确定目标函数 (3)决策变量所受的限制条件是什么,确定约束条件 最优化问题的建模,通常按照以下步骤进行: (1)问题定义,确定决策变量、目标函数 阅读全文
posted @ 2021-04-28 11:22 youcans 阅读(6103) 评论(0) 推荐(0) 编辑
摘要:练习91: 题目: 时间函数举例1。 程序: if __name__ == '__main__': import time print (time.ctime(time.time())) print (time.asctime(time.localtime(time.time()))) print 阅读全文
posted @ 2021-03-08 16:59 youcans 阅读(268) 评论(0) 推荐(0) 编辑
摘要:练习81: 题目: 809*??=800*??+9*?? 其中??代表的两位数, 809*??为四位数,8*??的结果为两位数,9*??的结果为3位数。求??代表的两位数,及809*??后的结果。 程序: a = 809 for i in range(10, 100): b = i * a if b 阅读全文
posted @ 2021-03-06 21:10 youcans 阅读(291) 评论(0) 推荐(0) 编辑
摘要:练习71: 题目: 编写input()和output()函数输入,输出5个学生的数据记录。 程序: N = 5 # stu # num : string # name : string # score[4]: list student = [] for i in range(5): student. 阅读全文
posted @ 2021-03-05 12:27 youcans 阅读(227) 评论(0) 推荐(0) 编辑
摘要:练习61: 题目: 打印出杨辉三角形。 程序: if __name__ == '__main__': a = [] for i in range(10): a.append([]) for j in range(10): a[i].append(0) for i in range(10): a[i] 阅读全文
posted @ 2021-03-02 19:41 youcans 阅读(197) 评论(0) 推荐(0) 编辑
摘要:练习51: 题目: 学习使用 按位与(&) 。 分析: 0&0=0; 0&1=0; 1&0=0; 1&1=1。 程序: if __name__ == '__main__': a = 8 b = a & 4 print('a & b = %d' % b) b &= 2 print('a & b = % 阅读全文
posted @ 2021-02-28 20:16 youcans 阅读(230) 评论(0) 推荐(0) 编辑
摘要:练习41: 题目: 模仿静态变量的用法。 程序: def varfunc(): var = 0 print('var = %d' % var) var += 1 if __name__ == '__main__': for i in range(3): varfunc() # 类的属性 # 作为类的 阅读全文
posted @ 2021-02-26 10:01 youcans 阅读(158) 评论(0) 推荐(0) 编辑
摘要:练习31: 题目: 请输入星期几的第一个字母来判断一下是星期几,如果第一个字母一样,则继续判断第二个字母。 **分析:**用情况语句比较好,如果第一个字母一样,则判断用情况语句或if语句判断第二个字母。 程序: letter = input("please input:") # while lett 阅读全文
posted @ 2021-02-26 09:40 youcans 阅读(188) 评论(0) 推荐(0) 编辑
摘要:练习21: 题目: 猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前 一天剩下的一半零一个。到第10天早上想再吃时,见只剩下一个桃子了。求第一天共摘了多少。 分析: 采取逆向思维的方法,从后往前推断。 程序 阅读全文
posted @ 2021-02-25 10:01 youcans 阅读(291) 评论(0) 推荐(1) 编辑
摘要:练习11: 题目: 古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少? 分析: 兔子的规律为数列1,1,2,3,5,8,13,21.... 程序: f1 = 1 f2 = 1 for i in range(1 阅读全文
posted @ 2021-02-25 09:59 youcans 阅读(252) 评论(0) 推荐(0) 编辑
摘要:练习01: 题目: 有四个数字:1、2、3、4,能组成多少个互不相同且无重复数字的三位数?各是多少? 分析: 可填在百位、十位、个位的数字都是1、2、3、4。组成所有的排列后再去 掉不满足条件的排列。 程序: for i in range(1, 5): for j in range(1, 5): f 阅读全文
posted @ 2021-02-24 14:05 youcans 阅读(421) 评论(0) 推荐(0) 编辑