笨方法学Python,Lesson 32 - Lesson 34

Exercise 32

代码

the_count = [1, 2, 3, 4, 5]
fruits = [‘apples‘, ‘oranges‘, ‘pears‘, ‘apricots‘]
change = [1, ‘pennies‘, 2, ‘dimes‘, 3, ‘quarters‘]

# this first kind of for-loop goes through a list
for number in the_count:
    print "This is count %d" % number 

# same as above
for fruit in fruits:
    print "A fruit of type: %s" % fruit 
    
# also we can go through mixed lists too
# notice we have to use %r since we don‘t know what‘s in it 
for i in change:
    print "I got %r" % i 

# we can also build lists, first start with an empty one 
elements = []

# then use the range function to do 0 to 5 counts
for i in range(0,6):
    print "Adding %d to the list." % i 
    # append is a function that lists understand 
    elements.append(i) 
    
# now we can print them out too
for i in elements:
    print "Element was: %d" % i

输出

Notes:

①range(start,end)返回一个整型序列,范围是start至end-1

>>> range(0.6)
[0, 1, 2, 3, 4, 5]

②for...in...迭代循环适用于字符串、列表等序列类型

③序列之间可以用加号相连,组成新序列

>>> elements = []
>>> elements + range(0,6)
[0, 1, 2, 3, 4, 5]

Exercise 33

代码

i = 0
numbers = []

while i < 6:
    print "At the top i is %d" % i 
    numbers.append(i)
    
    i = i + 1 
    print "Numbers now: ", numbers 
    print "At the bottom i is %d" % i 
    
    
print "The numbers:"

for num in numbers:
    print num

输出

Notes:

①while通过检查布尔表达式的真假来确定循环是否继续。除非必要,尽量少用while-loop,大部分情况下for-loop是更好的选择;使用while-loop时注意检查布尔表达式的变化情况,确保其最终会变成False,除非你想要的就是无限循环

②加分习题一代码改写

代码

i = 0
numbers = []
def numbers_list(x):
    global numbers, i 
    while i < x:
        print "At the top i is %d" % i 
        numbers.append(i)
    
        i = i + 1 
        print "Numbers now: ", numbers 
        print "At the bottom i is %d" % i 
    
    
numbers_list(7)
    
print "The numbers:"

for num in numbers:
    print num

输出

PS:函数需注意局部变量和全局变量的问题。

③加分习题二代码改写

代码

i = 0
numbers = []
def numbers_list(x, y):
    global numbers, i 
    while i < x:
        print "At the top i is %d" % i 
        numbers.append(i)
    
        i = i + y 
        print "Numbers now: ", numbers 
        print "At the bottom i is %d" % i 
    
    
numbers_list(7, 3)
    
print "The numbers:"

for num in numbers:
    print num

输出

Exercise 34

本节无代码,主要练习列表的切片、序数与基数问题

练习:

The animal at 1 is the 2nd animal and is a python.
The 3rd animal is at 2 and is a peocock.
The 1st animal is at 0 and is a bear.
The animal at 3 is the 4th animal and is a kanaroo.
The 5th animal is at 4 and is a whale.
The animal at 2 is the 3rd animal and is a peocock.
The 6th animal is at 5 and is a platypus.
The animal at 4 is the 5th and is a whale.
时间: 2024-10-13 15:43:38

笨方法学Python,Lesson 32 - Lesson 34的相关文章

Day 2 笨方法学Python

手打第25个练习,出错的地方有: def 定义后indent 4个空格,第一行空了以后,直接换行是跟上面对其的,但是运行时是错误的,我的解决方法是,重新手动空格4个: 还发现一个问题就是,中文解释,以前老是出错 # -*- coding : utf-8 -*- 网上看到的加上这个就可以了,但是我的还是出错.今天偶然在削微寒的博客http://www.cnblogs.com/xueweihan/的GIthub上找到了答案 #coding:utf-8 换成这个语句就可以了.以后,尽量每句都加上注释,

笨方法学python(5)加分题

这篇对应的是习题17,更多文件操作 # -*- coding: utf-8 -*- #对文件更多操作复制A文件的内容到B文件 #from sys import argv from os.path import exists prompt = "> " from_file = raw_input("please input the filename where you want to copy from: >") #in_file = open(from_

笨方法学python(6)加分题--列表与字典的区别

he string "PAYPALISHIRING" is written in a zigzag pattern on a given number of rows like this: (you may want to display this pattern in a fixed font for better legibility) P A H N A P L S I I G Y I R And then read line by line: "PAHNAPLSIIG

笨方法学python(4)加分题

自己在看笨方法学python这本书,把自己觉得有学到东西的记下来,并不是每个习题都有记录 这次对应的是:习题 6: 字符串(string)和文本 这次只要是想说明一下,在print语句中,只要带有格式化字符的,会当作格式化来处理 脚本1: 结果1: 打出的结果没有%r,那是因为当作格式化处理了 脚本2: 结果2: 会报错,因为print joke_evaluation %hilarious 是格式化的标识 脚本3: 结果3:

笨方法学python Lesson 43

我的小游戏  未完待续 # -*- coding:utf-8 -*- def start():     print u"昨晚你喝了烂醉,醒来发现躺在一个陌生的地方,不像是朋友送来的旅馆.这恐怖房间必非久留之地."     print u"你必须逃离这间房子."     print "Are you ready? Here wo go."     game_start = BeginRoom()     game_start.enter() def

笨方法学python, Lesson 38, 39

Exercises 38 代码 ten_things = "Apples Oranges Crows Telephone Light Sugar" print "Wait there are not 10 things in that list. Let's fix that." stuff = ten_things.split(' ') more_stuff = ["Day", "Night", "Song&quo

笨方法学python Lesson 46 - 49

Exercises 46 代码 setup.py try:     from setuptools import setup except ImportError:     from distutils.core import setup config = {     'description': 'My Project',     'author': 'Jer',     'url': 'URL to get it at.',     'download_url': 'Where to dow

笨方法学Python,Lesson 35, 36

Exercise 35 代码 from sys import exit  def gold_room():     print "This room is full of gold. How much do you take?"          choice = raw_input("> ")     if "0" in choice or "1" in choice:         how_much = int(c

笨方法学Python(3)

习题 20: 函数和文件 seek()的用法: >>> f.readlines()#读取出文件的所有内容 ['abcdefghijk\n'] >>> f.seek(2) #将当前的位置设定为相对当前位置的2的位置. >>> f.read(4) #读取4个位置的数据(从设定的位置开始读取,也就是ab 后面的四个字符) 'cdef' >>> f.seek(2,1)#将当前的位置(2)设定为相对当前位置的2的位置. >>>