Python核心编程 第六章课后习题

6–1.

字符串.string 模块中是否有一种字符串方法或者函数可以帮我鉴定一下一个字符串

是否是另一个大字符串的一部分?

Answer:in     not in

6-2.

#! /usr/bin/env python
# coding: utf-8

‘‘‘
6–2.
字符串标识符.修改例 6-1 的 idcheck.py 脚本,使之可以检测长度为一的标识符,并且
可以识别 Python 关键字,对后一个要求,你可以使用 keyword 模块(特别是 keyword.kelist)来帮你.
‘‘‘

import string
import keyword

alphas = string.letters + ‘_‘
nums = string.digits
key_list = keyword.kwlist

print ‘Welcome to the Identifier Checker v1.0‘
print ‘Testees must be ai least 2 chars long.‘

myInput = raw_input(‘Identifier to test?‘)

if len(myInput) >= 1:
    if myInput[0] not in alphas:
        print ‘‘‘invalid : first symbol must be alphabetic‘‘‘
    elif myInput in key_list:
        print ‘‘‘invalid: the input id is a Python‘s keyword‘‘‘ 
    else:
        alphnums = alphas + nums
        for otherChar in myInput[1:]:
            if otherChar not in alphnums:
                print ‘‘‘invalid: remaining symbols must be alphanumeric‘‘‘
                break
        else:
            print "okay as an identifier"

6-3.

#! /usr/bin/env python
# coding: utf-8

‘‘‘
6–3.
排序
(a) 输入一串数字,从大到小排列之.
(b) 跟 a 一样,不过要用字典序从大到小排列之.
‘‘‘
#(a)
def get_num():
    global num_list
    num_list = []
    num = ‘‘
    while num != ‘!‘:
        num = raw_input(‘输入一些数字,以"!"结束‘).strip()
        if num != ‘!‘:
            try:
                num = float(num)
            except:
                print ‘输入有误,请重新输入‘
                get_num()
            else:
                num_list.append(num) 
        else:
            break
    return num_list

def sort_descending():
    get_num()
    print sorted(num_list, reverse = True)

print ‘----------------(a)----------------‘
sort_descending()

#(b)
print ‘-----------------(b)---------------‘
key_sort = []
while True:
    k = raw_input(‘输入一些数字吧,以字典序排列大小,以"#"结束输入:‘)
    if k != ‘#‘:
        key_sort.append(k)
    else:
        break
print sorted(key_sort, reverse = True)
时间: 2024-10-13 07:32:07

Python核心编程 第六章课后习题的相关文章

Python核心编程_第二章课后习题

以下是自己在学习Python核心编程时,做的课后练习题.现在把它们贴出来,以记录自己的学习过程.小弟是机械出身,很多练习题目写的很是机械.虽然写出来的脚本都能满足题目要求,但效率可能不是最好的,所以,小弟还是厚着脸皮把它们给贴出来,一来可以让高手指点,二来可以与我一样在学习Python的兄弟共同学习. 以下的程序均以题目标号命名,如2-3这个题目,程序名就为2_3.py. 习题2_3.py #!/usr/bin/env python A = 10 B = 4 print "A plus B is

python 核心编程第六章课后题自己做的答案

6–6. 字符串.创建一个 string.strip()的替代函数:接受一个字符串,去掉它前面和后面的 空格(如果使用 string.*strip()函数那本练习就没有意义了) 1 'Take a string and remove all leading and trailing whitespace' 2 3 def newStrip(str): 4 'delete blanks around a string' 5 _end = len(str) 6 _start = 0 7 8 # de

python核心编程--第六章 6.22 练习

6.22 练习 初学python,如果代码有问题,欢迎指正. #!/usr/bin/python # -*- coding: utf-8 -*- #6–1. 字符串.string 模块中是否有一种字符串方法或者函数 #可以帮我鉴定一下一个字符串是否是另一个大字符串的一部分? import string ss = "I'm chinese." substr = 'chinese' index = ss.find(substr) if index == -1: print("No

python 核心编程 第六章习题

6-6 创建一个类似 string.strip() 函数 方法一 低效方法 大量复制和生成子串对象 def str_strip(s): while len(s)>=2: if s[0]==' ': s=s[1:] else: break while len(s)>=2: if s[-1]==' ': s=s[:-1] else: break if s==' ' or s=='': return '' else: return s 方法二: 转换成列表 def str_strip(s): if

python核心编程第4章课后题答案(第二版75页)

4-1Python objects All Python objects have three attributes:type,ID,and value. All are readonly with a possible expection of the value(which can be changed only if the object is mutable). 4-5str()and repr() repr() is a built-in function while str() wa

Python核心编程2第一章课后练习

1-1 在windows下的安装方法在网上下载python2.7直接安装到C盘1)在系统变量中找到path. 2)编辑path值,添加你安装的python路径,C:\Python27. 3)检验python是否安装配置成功,打开cmd,输入python,如果出现以下界面,则说 明你的python安装成功了.   1-2 a.三种方法执行python 1)启动交互式解释器powershell python,每次输入一行python代码 2)运行python的脚本 3)集成开发环境图形界面(IDLE

python核心编程2第二章课后练习

2-1 print来显示变量的内容,仅用变量名时,输出的字符串使用单引号括起来的,这是为了让非字符串对象也能以字符串的方式显示在屏幕上,print语句使用str()函数显示对象,交互解释器调用repr()函数来显示对象 2-2 (a)运算1+2*4 (b)只会做运算不会输出 (c)运算未显示结果 (d)交互解释器输入一段语句后会返回语句结果 (e)print ‘1+2*4’   2-3   2-4 (a) #!/usr/etc/env python string =raw_input("plea

python核心编程第六章练习6-14

随机数.设计一个“石头.剪子.布”游戏,有时又叫“Rochambeau”,你小时候可能玩过,下面是规则.你和你的对手,在同一时间做出特定的手势,必须是下面一种:石头.剪子.布.胜利者从下面的规则产生,这个规则本身是个悖论.(a)布包石头.(b)石头砸剪子.(c)剪子剪破布.在你的计算机版本中,用户输入他/她的选项,计算机找一个随机选项,然后由你的程序来决定一个胜利者或者平手.注意,最好的算法是尽量少使用if语句.[答案]代码如下: #!/usr/bin/env python # -*- codi

python核心编程第六章练习6-13

6-13.字符串.string模块包含三个函数,atoi(),atol()和atof(),他们分别负责把字符串转换成整型.长整型和浮点型数字.从Python 1.5起,Python的内建函数int().long().float()也可以做同样的事了,本文来,complex()函数可以把字符串转换成复数(然而1.5之前,这些转换函数只能工作于数字之上)自博客园.string模块中并没有实现一个atoc()函数,那么你来实现一个atoc(),接受单个字符串做参数输入,一个表示复数的字符串,例如'-1