返回顶部

看下老师的方法:

  1. provinces = list(capitals.keys())

这里为什么有加list?有什么作用吗?

这里为什么要加list?

  1. print('****************************************')
  2. print('欢迎光临小象奶茶馆!\n小象奶茶馆售卖宇宙无敌奶茶!\n奶茶虽好,可不要贪杯哦!\n每次限尝鲜一种口味:\n1. 原味冰奶茶 3元 \n2. 香蕉冰奶茶 5元 \n3. 草莓冰奶茶 5元 \n4. 蒟蒻冰奶茶 7元 \n5. 珍珠冰奶茶 7元 ')
  3. print('****************************************')
  4. milktea_num = int(input('请选择您要购买的奶茶编号:'))
  5. milktea_quantity = int(input('请输入您要购买的数量:'))
  6. if_vip = input('您是小象奶茶馆的会员吗(y/n)?')
  7. if milktea_num <= 5 and milktea_num >= 1:
  8. if milktea_num == 1:
  9. price = 3
  10. elif milktea_num == 2 or milktea_num == 3:
  11. price = 5
  12. elif milktea_num == 4 or milktea_num == 5:
  13. price = 7
  14. money = price * milktea_quantity
  15. print('您购买的是{}号奶茶,共购买{}杯,总计{}元'.format(milktea_num, milktea_quantity, money))
  16. if if_vip == 'y':
  17. discount = float(input('今天你可以自定义会员折扣,请输入一个0到1之间的数字:'))
  18. if discount >=0 and discount <= 1:
  19. money *= discount
  20. print('您可以享受会员价,折扣为:{}折,折后总价:{}元'.format(discount*10, money))
  21. else:
  22. money *= 0.9
  23. print('您的折扣输入有误,本次消费还按照会员正常折扣9折,折后总价:{}元'.format(money))
  24. elif if_vip == 'n':
  25. print('不好意思哦,您目前还不是我们的会员,\n本次无法享受会员价喽,永远爱你么么哒!')
  26. else:
  27. print('我还是个小宝宝,您的输入我看不懂,您拿着小票问问小象君吧!')
  28. else:
  29. print('Woops!我们只售卖以上五种奶茶哦!新口味敬请期待!')
  30. print('****************************************')
  31. print('做一枚有态度、有思想的奶茶馆(傲娇脸)!\n\t祝您今日购物愉快!\n\t\t诚挚欢迎您再次光临!')
  32. print('****************************************')

为什么结果是4.1999999999999这样?

  1. bool1=df['Med Age']>39
  2. bool2=df['Population']>50000000
  3. df[bool1 & bool2]

bool1=df['Med Age']>39 bool2=df['Population']>50000000 df[bool1 & bool2] 这里如果把& 改成and 会报错,这个是为什么呢

下面我们来练习一下。请将下面的代码抄写到Notebook中相应的单元格中,然后依次运行,观察每个单元格的运行结果。

  1. # DataFrame遍历
  2. #行遍历
  3. for index,data in df.iterrows():
  4. print(index,data[0],data[1],data[2],data[3])
  5. #行遍历tuples
  6. for row in df.itertuples():
  7. print(row)
  8. #---列遍历
  9. for col,data in df.iteritems():
  10. print(col,':',data[1001],data[1002],data[1003],data[1004],data[1005])

为什么列遍历不能向行遍历那样使用编号去索引。 如果把列遍历索引data[1001]改为data[0]会报错

所以,数据的第一行将被拆分为:

[‘1’, ‘赵丽颖’, ‘女’, ‘中国’, ‘汉族’, ‘天秤座’, ‘A型’, ‘165cm’, ‘44.6kg’, ‘河北省廊坊市’, ‘1987年10月16日’, ‘’, ‘花千骨、楚乔传、陆贞传奇、杉杉来了、知否知否应是绿肥红瘦、乘风破浪、西游记女儿国’]

出生年龄后面有一个 ” 号,是什么意思?

所以,数据的第一行将被拆分为:

[‘1’, ‘赵丽颖’, ‘女’, ‘中国’, ‘汉族’, ‘天秤座’, ‘A型’, ‘165cm’, ‘44.6kg’, ‘河北省廊坊市’, ‘1987年10月16日’, ‘’, ‘花千骨、楚乔传、陆贞传奇、杉杉来了、知否知否应是绿肥红瘦、乘风破浪、西游记女儿国’]

出生年龄后面有一个 ” 号,是什么意思?

  1. with open("superstarinfo.txt", "r") as f:
  2. head = f.readlines()
  3. head[0] = head[0].replace("\n","")
  4. head_list = head[0].split(',')
  5. data_dict = {}
  6. for i in head[1:]:
  7. i = i.replace("\n","")
  8. data =i.split(',')
  9. name = data[1]
  10. data_dict[name] = {}
  11. for j in range(2,len(head_list)):
  12. data_dict[name][head_list[j]] = data[j]
  13. def get_sex(my_dict):
  14. sex_dict = {"男": 0, "女": 0}
  15. for star_name in my_dict:
  16. if my_dict[star_name]["性别"] == "男":
  17. sex_dict["男"] += 1
  18. elif my_dict[star_name]["性别"] == "女":
  19. sex_dict["女"] += 1
  20. return sex_dict
  21. sex_dict = get_sex(data_dict) # 调用函数,将返回值赋值于变量 sex_dict
  22. for sex in sex_dict: # 遍历字典的所有键,相当于 for sex in sex_dict.keys(): 省略了.keys()
  23. print("100个最受欢迎的明星中,有{}明星{}个" .format(sex, sex_dict[sex]))

15~24行的代码看不太明白, my_dict、sex_dict、star_name在1~13行中都没有出现过,是怎么和字典data_dict里的键关联起来的?

Hi,欢迎来到小象学院!从今天起,我将带领你进入一个看似神秘但实际上很有趣的领域—人工智能,希望通过本关的学习,你能体会到人工智能的魅力,并对它背后最重要的驱动力—机器学习有一定了解。准备好了吗,让我们开始吧!

人工智能学习的整体思路和框架有吗?

跟NumPy类似,DataFrame中也有索引数组,将DataFrame中的某一列,与一个标量值进行对比计算,就可以得到一个由True、False组成的一维向量(Series)。在以下代码块中,添加代码df['部门'] == '研发部',观察代码执行的结果:

老师,这里我尝试用大于小于等比较运算符也能够得出结果,但是我不大清楚这里的判断依据是什么?

正在加载...
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152