设为首页 收藏本站
查看: 1875|回复: 0

[经验分享] Coding the Matrix作业Python Lab及提交方法

[复制链接]

尚未签到

发表于 2017-5-5 10:05:57 | 显示全部楼层 |阅读模式
Coding the Matrix: Linear Algebra
through Computer Science Applications

  这是一门用python实现矩阵运算的课,第一次作业就感觉对python的提高很大,用到了各种数据类型。

代码如下:

## Task 1
minutes_in_week = 60*24*7
## Task 2
remainder_without_mod = 2304811-2304811//47*47
## Task 3
divisible_by_3 = (673+909)/3==0
## Task 4
x = -9
y = 1/2
statement_val = 2**(y+1/2) if x+10<0 else 2**(y-1/2)
## Task 5
first_five_squares = { x*x for x in {1,2,3,4,5} }
## Task 6
first_five_pows_two = { 2**x for x in {0,1,2,3,4} }
## Task 7: enter in the two new sets
X1 = { 1, 2, 3 }
Y1 = { 4, 11, 17 }
## Task 8: enter in the two new sets
X2 = { 1, 2, 0 }
Y2 = { 4, 8, 16 }
## Task 9
base = 10
digits = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}
three_digits_set = { base**2*x+base*y+z for x in digits for y in digits for z in digits }
## Task 10
S = {1, 2, 3, 4}
T = {3, 4, 5, 6}
S_intersect_T = { x for x in S if x in T }
## Task 11
L_average = sum([20, 10, 15, 75])/len([20, 10, 15, 75]) # average of: [20, 10, 15, 75]
## Task 12
LofL = [[.25, .75, .1], [-1, 0], [4, 4, 4, 4]]
LofL_sum = sum({sum(LofL[x]) for x in range(0,len(LofL))}) # use form: sum([sum(...) ... ])
## Task 13
cartesian_product = [[x,y] for x in {'A','B','C'} for y in {1,2,3} ] # use form: [ ... {'A','B','C'} ... {1,2,3} ... ]
## Task 14
S = {-4, -2, 1, 2, 5, 0}
zero_sum_list = [ (x,y,z) for x in S for y in S for z in S if x+y+z==0 ]
## Task 15
exclude_zero_list = [ (x,y,z) for x in S for y in S for z in S if (x+y+z==0) and (x or y or z) ]
## Task 16
first_of_tuples_list = [ (x,y,z) for x in S for y in S for z in S if (x+y+z==0) and (x or y or z) ][0]
## Task 17
L1 = [1,1,2] # <-- want len(L1) != len(list(set(L1)))
L2 = [2,1,3] # <-- same len(L2) == len(list(set(L2))) but L2 != list(set(L2))
## Task 18
odd_num_list_range = { x for x in range(1,100,2)}
## Task 19
L = ['A','B','C','D','E']
range_and_zip = list(zip(list(range(5)),L))
## Task 20
list_sum_zip = [x+y for (x,y) in zip([10,25,40],[1,15,20])]
## Task 21
dlist = [{'James':'Sean', 'director':'Terence'}, {'James':'Roger', 'director':'Lewis'}, {'James':'Pierce', 'director':'Roger'}]
k = 'James'
value_list = [d[k] for d in dlist]
## Task 22
dlist = [{'Bilbo':'Ian','Frodo':'Elijah'},{'Bilbo':'Martin','Thorin':'Richard'}]
k = 'Bilbo'
value_list_modified_1 = [d[k] if k in d else 'NOT PRESENT' for d in dlist] # <-- Use the same expression here
k = 'Frodo'
value_list_modified_2 = [d[k] if k in d else 'NOT PRESENT' for d in dlist] # <-- as you do here
## Task 23
square_dict = {x:x**2 for x in range(100)}
## Task 24
D = {'red','white','blue'}
identity_dict = {x:x for x in D}
## Task 25
base = 10
digits = set(range(10))
representation_dict = { base**2*x+base*y+z:[x,y,z] for x in digits for y in digits for z in digits}
## Task 26
d = {0:1000.0, 1:1200.50, 2:990}
names = ['Larry', 'Curly', 'Moe']
listdict2dict = { names[x]:y for (x,y) in d.items() }
## Task 27
def nextInts(L): return [ x+1 for x in L ]
## Task 28
def cubes(L): return [ x**3 for x in L ]
## Task 29
def dict2list(dct, keylist): return [ dct[x] for x in keylist ]
## Task 30
def list2dict(L, keylist): return { x:y for (x,y) in zip(keylist,L) }



评分系统有一些bug,如task2不能用括号等,如果出错可以比对一下。
提交方法:
  在linux下提交按照说明即可,但在windows下面,就要费好大一番功夫了。
  由于submit_python_lab.py里面默认待提交的py文件在当前目录下,必须把py文件和submit_python_lab.py文件拷贝到python3的安装文件夹下面。我用的是python3.3,因此要拷贝到的目录为:C:\Python33。论坛说双击submit_python_lab.py输入账号密码即可,为了方便我使用bat脚本文件运行:

C:\Python33\python C:\Python33\submit_python_lab.py

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-373312-1-1.html 上篇帖子: 序列元素Python入门笔记(5):重要的序列 下篇帖子: 【转】深刻理解Python中的元类(metaclass)
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表