Python 计算思维训练——字典与字符串练习

Python 计算思维训练——字典与字符串练习(一)

基于表格创建字典 - 物理常数存储

#coding=utf-8
import re
# 请在此处填写代码
#********** Begin **********#
f =open('src/step1/constants.txt','r')
constants = {
   }
count =0
for i in f:
     count=count+1
     if count>2:   
        j=re.split('\s{2,}',i)
        constants[j[0]]=float(j[1])
print(constants)
#********** End **********#

字符串操作 - 物质名称缩写

#coding=utf-8
import re
def read_densities1(filename):
    # 请在此处填写代码
    # ********** Begin **********#
    f=open(filename,'r')
    dirt1={
   }
    for i in f:
      list1=re.split('\s{2,}',i.rstrip('\n'),2,re.U)
      dirt1[list1[0]]=eval(list1[1])
    return dirt1
    # ********** End **********#

def read_densities2(filename):
    # 请在此处填写代码
    # ********** Begin **********#
    f=open(filename,'r')
    dirt1={
   }
    for i in f:
      list1=i.rstrip('\n').split()
      str1=' '.join(list1[0:len(list1)-1])
      dirt1[str1]=eval(list1[-1])
    return dirt1
    # ********** End **********#

def test_densities(filename):
    # 请在此处填写代码
    # ********** Begin **********#
    if read_densities2(filename)==read_densities1(filename):
        return True
    else :
        return False    
    # ********** End **********#

结构文件解析与绘图 - 解释程序的输出

#coding=utf-8
import warnings
warnings.filterwarnings("ignore")
import matplotlib
matplotlib.use('Agg')
import matplotlib.pyplot as plt


# 请在此处填写代码
#********** Begin **********#
f =open('src/step3/insum.txt','r')
epsilon=[]
n=[]
for i in f:
    i=i.rstrip('\n')
    epsilon.append(eval(i[9:15]))
    n.append(eval(i[i.find('=')+1:len(i)]))           
plt.semilogy(n, epsilon)     
#********** End **********#

plt.savefig('src/step3/output/result.jpg')

制作字典

#coding=utf-8

# 请在此处填写代码
#********** Begin **********#
data={
   }
data['Alpha Centauri A']=1.56
data['Alpha Centauri B']=0.45
data['Alpha Centauri C']=0.00006
data['Barnard’s Star']=0.0005
data['Wolf 359']=0.0000
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值