日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python中函数是一段子程序_用Python来写一个男女相亲小程序|码农的情人节

發(fā)布時間:2024/1/18 python 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python中函数是一段子程序_用Python来写一个男女相亲小程序|码农的情人节 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

功能:

你輸入你的性別,年齡,生日,我程序就給匹配一下你喜歡的類型,下面我們具體來講講怎么用Python寫

第一部分:用戶輸入部分

1.獲取用戶的輸入:我們用raw_input()

args =raw_input('Please input your info:sex[man,woman],age[20..60],birthday[month-day]\n')

我們希望用戶輸入3個參數(shù),男或者女,年齡在20-60歲之間,生日,這個有3個問題需要解決

1).檢查用戶的輸入,首先是長度

len(args.split())判斷一下是不是3個參數(shù)

2).若長度對了,檢查第一個參數(shù)是man還是woman

sexs = ['man', 'woman']

args.split()[0] not in sexs:

3).若第一個參數(shù)也對了,檢查第二個參數(shù)

int(args.split()[1]) < 20 or int(args.split()[1]) > 60

也可以用int(args.split()[1]) not in range(20,61)

有一個要注意,因為輸入的都是字符串,所以比如輸入的20,其實是字符串'20',必須要強制轉(zhuǎn)換成20才能進行比較,而且range值接受integer

4).若第二個參數(shù)讀對了,檢查第三個參數(shù)也就是日期

其實的合法性檢查需要用datetime.datetime.strptime()若成功就返回True,否則會報錯,然后我們用try/except來捕捉,若捕到了就返回False.

我這邊還是很溫柔的用if/elif/else這樣的判斷,當然你也可以暴力的用raise TypeError這樣拋出一些錯誤.

第二部分:生日和星座的映射

2.我們讓用戶輸入的是性別,年齡和生日,我們需要把生日轉(zhuǎn)換成星座,然后才好進一步調(diào)用

1).生日和星座的mapping這個很簡單,構造2個表格

constellation_name_list = [u'摩羯座',u'水瓶座',u'雙魚座',u'白羊座',

u'金牛座',u'雙子座',u'巨蟹座',u'獅子座',

u'處女座',u'天秤座',u'天蝎座',u'射手座']

constellation_date_range = [(1,20),(2,19),(3,21),(4,21),

(5,21),(6,22),(7,23),(8,23),

(9,23),(10,23),(11,22),(12,22)]

2),判斷生日落在哪個區(qū)間

這個解法有很多種,有一種比較討巧的解法,是用python自帶的列表比較,比如(2,1)<(2,19),利用這一點,再加上filter函數(shù),只需要1行代碼搞定,這一點非常巧妙

res=filter(lambdaeach_constellation: each_constellation <= (month,day),constellation_date_range)

會返回一個過濾的序列,比如輸入的生日在3.10,那么(3,10)比(3,21)小,這樣就過濾得到一個列表是[(1,20),(2,19)],取其長度為2,然后把2作為星座列表index,取constellation_name_list[2]就可以了

return constellation_name_list[len(res) %12]

有一點要注意的是星座的列表長度是12,但是下標最大是[11]

第三部分:男女擇偶樣本

3.我這邊用一個簡單的網(wǎng)絡段子構造樣本,都說男的從20到60歲都一直喜歡一種類型的就是"年輕漂亮的",而女孩喜歡的對象,隨著自己年齡和閱讀的增長,需求是不斷的變的

25歲左右的女孩喜歡=>高大,帥氣的

30歲左右的女孩喜歡=>事業(yè)有成,瀟灑多金

35歲左右的女性喜歡=>成熟穩(wěn)重,有責任感

40歲左右的女性喜歡=>性格溫和,有共同的生活目標

50歲左右的女性喜歡=>身體健康,會照顧家庭的

60歲左右的女性喜歡=>有相同話題的,說的來的

25歲左右的男孩喜歡=>年輕漂亮的

30歲左右的男人喜歡=>年輕漂亮的

35歲左右的男人喜歡=>年輕漂亮的

40歲左右的男人喜歡=>年輕漂亮的

50歲左右的男性喜歡=>年輕漂亮的

60歲左右的男性喜歡=>年輕漂亮的

果然男的很專業(yè)~~哈哈

1).我們構造2個函數(shù)

一個處理男的擇偶需求,一個處理女的擇偶需求,程序就是算法+數(shù)據(jù)結(jié)構,我們這邊的數(shù)據(jù)結(jié)構用字典,列表都可以,我這邊用一個列表構造一下

woman_choice_25 = [u'帥氣',u'個子高']

woman_choice_30 = [u'有錢',u'事業(yè)有成']

woman_choice_35 = [u'穩(wěn)重',u'有責任心']

woman_choice_40 = [u'對我好',u'有共同的生活目標']

woman_choice_50 = [u'身體健康',u'顧家']

woman_choice_60 = [u'有共同語言']

woman_chocies = [woman_choice_25,woman_choice_30,woman_choice_35,

woman_choice_40,woman_choice_50,woman_choice_60]

woman_ages = [25,30,35,40,50,60]

2).邏輯部分

入口肯定是自己的年齡了,內(nèi)部邏輯很簡單,一個age判斷就可以了

但是這樣有點麻煩,我用了一個filter函數(shù),把age的判斷封裝到filter里面去,看上去會簡單一點filter(lambda age: age < your_age, woman_ages)

第四部分: 男女星座的匹配

4.星座的匹配網(wǎng)上有成熟的mapping關系,我們直接寫死在一個字典里面,當然是字典套字典的

constellation_mapping_dict = {u'白羊座': [u'獅子座',u'白羊座',u'金牛座'],

u'金牛座': [u'處女座',u'摩羯座',u'巨蟹座'],

u'雙子座': [u'水瓶座',u'射手座',u'天秤座'],

u'巨蟹座': [u'雙魚座',u'天蝎座',u'摩羯座'],

u'獅子座': [u'射手座',u'白羊座',u'水瓶座'],

u'處女座': [u'摩羯座',u'金牛座',u'雙魚座'],

u'天秤座': [u'雙子座',u'水瓶座',u'獅子座'],

u'天蝎座': [u'雙魚座',u'處女座',u'射手座'],

u'射手座': [u'白羊座',u'獅子座',u'雙子座'],

u'摩羯座': [u'金牛座',u'處女座',u'雙魚座'],

u'水瓶座': [u'天秤座',u'雙子座',u'獅子座'],

u'雙魚座': [u'天蝎座',u'巨蟹座',u'摩羯座']}

我們只要輸入一個星座,然后查這個表就可以得到匹配的星座

第五部分:程序的交互輸出(中英文版)

5.一般程序的輸出不外乎,終端打印,文件輸出,GUI,網(wǎng)頁

1).我們這個是小程序,就簡單的用打印輸出吧

2).為了讓用戶體檢好一些,我用中英文兩個版本

大家要注意輸出中文的時候,一定要用下面兩行

reload(sys)

sys.setdefaultencoding('utf-8')

3).用戶交互

我這邊用了一個while來hold住死循環(huán),里面不斷的打印輸出結(jié)果,然后提示一些信息,用戶根據(jù)提示,輸入相應的信息,若是q就退出

好最后看一下結(jié)果:

作者:編程新視野

鏈接:https://www.jianshu.com/p/3d9e3739f279

總結(jié)

以上是生活随笔為你收集整理的python中函数是一段子程序_用Python来写一个男女相亲小程序|码农的情人节的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 四虎黄色影院 | 精东传媒在线观看 | 精品网站999www | av在线一区二区三区 | 中文字幕人成人乱码亚洲电影 | 九色视频偷拍少妇的秘密 | 蜜桃视频成人在线观看 | 婷婷五月花 | 亚洲成人免费影院 | 日本女优黄色 | 日本三级少妇 | 色姑娘av| 日韩一区二区三区不卡 | 男人的天堂黄色 | 国产一区资源 | 亚洲欧美日韩视频一区 | 欧美抠逼视频 | 久久6精品 | 中文字幕亚洲视频 | 精品久久久久久久久久久久久久 | 一区二区视频免费在线观看 | 不卡中文字幕在线观看 | 久久久久一 | 日韩视频网址 | 18成人免费观看网站下载 | 观看av在线 | 又黄又色又爽的视频 | 久久久久久久久久久久电影 | 国产主播99 | 欧美日韩黄色大片 | 九九影院最新理论片 | 亚洲一区二区天堂 | 妞干网这里只有精品 | 精品国产黄色 | 国产睡熟迷奷系列精品视频 | 国产精品午夜久久 | av观看免费在线 | 六月丁香激情网 | 美女屁股无遮挡 | 亚洲天堂av片 | 午夜爱爱免费视频 | 另类少妇人与禽zozz0性伦 | 麻豆最新 | 国产精品一区在线观看 | 亚洲美女av网站 | eeuss一区二区三区 | 69视频一区二区 | 国产精品午夜影院 | 真实的国产乱xxxx在线91 | 99久久精品一区二区 | 性生交大片免费看3p | 国产精品99久久久久久宅男 | 奇米精品一区二区三区四区 | 欧美视频一区二区在线观看 | 免费黄色成人 | 成人h视频在线观看 | 精品久久人人妻人人做人人 | 超碰免费97| 免费一级suv好看的国产网站 | 国产第十页 | 日韩欧美精品免费 | aaaaa级少妇高潮大片免费看 | 国产电影一区在线观看 | 国产黄色大片视频 | 米奇影视第四色 | 国产一区二区自拍视频 | 日本乱偷人妻中文字幕在线 | 亚洲大色 | 岛国av在线 | 欧美一区二区黄色 | 丰满少妇在线观看资源站 | 91ts人妖另类精品系列 | 在线观看免费视频黄 | 亚洲欧美v| 青青青国产在线 | 亚洲毛片一区二区三区 | 成人免费视频播放 | 日韩欧美在线一区二区三区 | 91网站在线看 | 奇米影视77777| 韩日午夜在线资源一区二区 | 精品成人无码一区二区三区 | 久久精品国产精品亚洲毛片 | 激情综合视频 | 狠狠干狠狠干狠狠干 | 欧美在线观看一区二区三区 | 91免费短视频 | 亚洲精品乱码久久久久久蜜桃91 | 五月婷婷,六月丁香 | 欧美国产日韩一区 | 娇小萝被两个黑人用半米长 | 人妖天堂狠狠ts人妖天堂狠狠 | 亚洲乱码国产乱码精品天美传媒 | a√在线 | 能免费看18视频网站 | 在线观看视频99 | 亚洲自拍偷拍综合 | 一级特黄特色的免费大片视频 | 国产在线视频资源 |