1. 程式人生 > >對檔案進行操作,將所需概率求出

對檔案進行操作,將所需概率求出

首先開啟檔案,遍歷檔案中的每一行,將每一行看做成列表,將列表的中的每一個元素遍歷,如果有所需的資料就記錄下來,方便以後的操作。

import math
job=input("請輸入關鍵字:")
addr=input("請輸入地址:")
sal=float(input("請輸入薪資(萬/月):"))
def P(job,addr,sal):
    file = open("D:\\1.txt","r")
    addrjob=0
    job_num=0
    addr_num=0
    salminsum = 0
    salmaxsum = 0
    S_2=0
    i=0
    addrjob=0
    for each_line  in file:
        i=i+1
        list = each_line.split('\t')
        if list[0]== job and list[1]==addr:
            addrjob=addrjob+1
        if list[0]==job:
            job_num=job_num+1
        if list[1]==addr:
            addr_num=addr_num+1
            salminsum=salminsum+float(list[2])
            salmaxsum=salmaxsum+float(list[3])
    file.close()
    file = open("D:\\1.txt","r")
    i=0
    for each_line1  in file:
        i=i+1
        li = each_line1.split('\t')
        if li[1]==addr:
            S_2=S_2+((float(li[2])-(salminsum/addr_num))**2)/addr_num
    file.close()
    p=addr_num/i
    p_job_addr=addrjob/addr_num
    bu=salminsum/addr_num
    f=(1/(math.sqrt(2*S_2*(math.pi))))*(math.e)**((-(sal-bu)**2)/(2*S_2))
    print("該情況的概率為:",p*(p_job_addr)*f)
P(job,addr,sal)
#b=P("java","北京",1.8)
#print("北京java工資為1.8w:",b)
#s=P("java","上海",1.8)
#print("上海java工資為1.8w:",s)
#g=P("java","廣州",1.8)
#print("廣州java工資為1.8w:",g)
#sz=P("java","深圳",1.8)
#print("深圳java工資為1.8w:",sz)
#pb=P("python","北京",1.8)
#print("北京python工資為1.8w:",pb)