Python Learning——第三天
来源:互联网 发布:好看的淘宝店铺 编辑:程序博客网 时间:2024/06/06 00:21
学生管理范例:
<span style="font-size:18px;">lloyd = { "name": "Lloyd", "homework": [90.0, 97.0, 75.0, 92.0], "quizzes": [88.0, 40.0, 94.0], "tests": [75.0, 90.0]}alice = { "name": "Alice", "homework": [100.0, 92.0, 98.0, 100.0], "quizzes": [82.0, 83.0, 91.0], "tests": [89.0, 97.0]}tyler = { "name": "Tyler", "homework": [0.0, 87.0, 75.0, 22.0], "quizzes": [0.0, 75.0, 78.0], "tests": [100.0, 100.0]}#字典的使用# Add your function below!</span>
<span style="font-size:18px;">"""返回list的平均值"""def average(numbers): total = sum(numbers) total = float(total) return total/len(numbers) </span>
<span style="font-size:18px;"> def get_average (student):</span>
<span style="font-size:18px;"><span style="white-space:pre"></span> homework =average(student["homework"]) </span>
<span style="font-size:18px;"><span style="white-space:pre"></span>quizzes = average(student["quizzes"]) </span>
<span style="font-size:18px;"><span style="white-space:pre"></span>tests = average(student["tests"]) </span>
<span style="font-size:18px;"><span style="white-space:pre"></span>return homework*0.1+quizzes*0.3+tests*0.6 </span>
<span style="font-size:18px;">"""返回学生成绩评级""" def get_letter_grade(score): if score>=90: return "A" elif score>=80: return "B" elif score>=70: return "C" elif score>=60: return "D" else: return "F" print get_letter_grade(get_average(lloyd))def get_class_average (students): results=[] for student in students: results.append(get_average(student)) return average(results) print get_class_average ([lloyd, alice, tyler])print get_letter_grade (get_class_average ([lloyd, alice, tyler]))</span>
——[ ]访问下标
——.append添加元素
——.pop(index)移除指定下标元素
——.remove(item)移除指定值元素,如果找到的话
—— del(n[1])与上类似,移除指定下标,但不返回其值
——lista+listb直接连接两个list
——list乘以常数返回一个list,如["n"]*5= =['n','n','n','n','n']
——print "---".join(list)在输出时用---取代list中的,
<span style="font-size:18px;">n = [3, 5, 7]for i in range(0, len(n)):#对list的每个成员操作 n[i] = n[i] * 2</span>
range函数(三版本):
——range(stop)
——range(start,stop) #区间类似于[start,stop)
——range(start,stop,step)
randint(1,6)在1到6之间返回一个随机数,包括6
猜位置范例:
<span style="font-size:18px;">from random import randintboard = []for x in range(5): board.append(["O"] * 5)def print_board(board): for row in board: print " ".join(row)print "Let's play Battleship!"print_board(board)def random_row(board): return randint(0, len(board) - 1)def random_col(board): return randint(0, len(board[0]) - 1)ship_row = random_row(board)ship_col = random_col(board)print ship_rowprint ship_col# Everything from here on should go in your for loop!# Be sure to indent four spaces!for turn in range(4): print "Turn", turn + 1 guess_row = int(raw_input("Guess Row:")) guess_col = int(raw_input("Guess Col:")) if guess_row == ship_row and guess_col == ship_col: print "Congratulations! You sunk my battleship!" break else: if (guess_row < 0 or guess_row > 4) or (guess_col < 0 or guess_col > 4): print "Oops, that's not even in the ocean." elif(board[guess_row][guess_col] == "X"): print "You guessed that one already." else: print "You missed my battleship!" board[guess_row][guess_col] = "X" # Print (turn + 1) here! print_board(board) if turn == 3: print "Game Over"</span>
下面这个例子else的位置很独特:
<span style="font-size:18px;">count = 0while count < 3: num = random.randint(1, 6) print num if num == 5: print "Sorry, you lose!" break count += 1else: print "You win!"</span>
字典:
——.items();.keys();.values()#顾名思义
新的list生成方式:
——evens_to_50 = [i for i in range(51) if i % 2 == 0]
——list[start:end:step]
——list[::-1]#逆转一个list
——squares =[x**2 for x in range(1,11)]
——threes_and_fives=[x for x in range(1,16) if x%3==0 or x%5==0]
功能性编程:
filter(lambda x: x % 3 == 0, my_list)
0 0
- Python Learning——第三天
- python学习——第三天
- 21天学通python——第三天
- python入门第三天——类
- python入门第三天——继承
- Python Learning——第一天
- python入门第三天——赋值区别
- python入门第三天——文件/存储器
- On the third day learning Python(第三天学习Python)
- Python第三天。
- Python 学习第三天
- Python学习第三天
- 学习python第三天
- Python: 第三天
- python学习第三天
- python第三天
- python 学习第三天
- 学习python第三天
- 临界区,互斥量,信号量,事件的区别
- Unity 2D游戏开发快速入门第1章创建一个简单的2D游戏
- 局域网聊天室源代码
- System.getProperty()方法大全
- GridView如何适配不同屏幕
- Python Learning——第三天
- 忘掉一切,记住从用户场景出发
- localtime 2次连续调用问题
- Java学习之旅
- intent.putExtra()方法参数详解
- tomcat 管理工具 lambdaprobe
- android 非框架 分时图和K线图分时图(一)
- 黑马程序员 _ Java基础 _ 之单例设计模式
- 一个简单的换球问题