#python核心编程 第二章

python快速入门

1. 走进新世界“Hello World”

print 'hello world'
print 'hello world'

2. 获取用户输入

# -*- coding: utf-8 -*- 
raw_input("这里输入提示信息")
#加“#”表示注释
a = raw_input("请输入a的值")#用变量保存获得的值
print a
# -*- coding: utf-8 -*- 
raw_input("这里输入提示信息")
#加“#”表示注释
a = raw_input("请输入a的值")#用变量保存获得的值
print a

结果:请输入a的值1
1

3. 各种操作符

数学运算符: + - * / % // 运算符的优先级和四则运算一样 比较特殊的是
""乘方 %取余 //取商

比较运算符:< <= > >= == !=

逻辑运算符:and or not

4. 列表 ,元组 ,字典以及字符串

列表【】 || 组()不可更改 || 字典 {}key-value
字符串的切片

str = 'string'
print str[0],str[4]#用逗号隔开结果会出现空格
str = 'string'
print str[0],str[4]#用逗号隔开结果会出现空格

结果>>>s n

字典的用处:
顾名思义,字典的作用就和“字典是一样的作用”知道一个字的拼音,通过拼音来找到对应的字。

dict = {1:"43",2:3,"windjin":3}
print dict[1],dict["windjin"],dict
dict = {1:"43",2:3,"windjin":3}
print dict[1],dict["windjin"],dict

结果>>>43 3 {1: '43', 2: 3, 'windjin': 3}

5. 列表解析

print range(3,10,2)#range函数生成一个数列
print [x**3 for x in range(4)]
print [x**2 for x in range(7) if x != 3]
print range(3,10,2)#range函数生成一个数列
print [x**3 for x in range(4)]
print [x**2 for x in range(7) if x != 3]

[3, 5, 7, 9]
[0, 1, 8, 27]
[0, 1, 4, 16, 25, 36]

6.读取文件

open(文件名,打开的模式)‘r’只读。‘w’写入。‘a’增加。‘b’二进制访问。‘+’读写。函数默认以“r”模式打开

all_text = "I'm windjin。"#这是将要写入的数据
file_name = "text.txt"
handle = open(file_name,"w")#以写入的方式打开txt文件
handle.write(all_text)#数据写入文件
handle.close()

f = open(file_name)
for each_line in f:
    print each_line
print f
all_text = "I'm windjin。"#这是将要写入的数据
file_name = "text.txt"
handle = open(file_name,"w")#以写入的方式打开txt文件
handle.write(all_text)#数据写入文件
handle.close()

f = open(file_name)
for each_line in f:
    print each_line
print f

I'm windjin。
<'open file 'text.t xt', mode 'r' at 0x03362758>

7. 错误和异常

用try-except语句来检测和处理错误

try:
   f = open("file name")
   for each_line in f:
       print each_line
except IOError ,e:
    print "文件打开错误", e
try:
   f = open("file name")
   for each_line in f:
       print each_line
except IOError ,e:
    print "文件打开错误", e

文件打开错误 [Errno 2] No such file or directory: 'file name'

练习

2–5. 循环和数字
分别使用 while 和 for 创建一个循环:

(a) 写一个 while 循环,输出整数从 0 到 10。(要确保是从 0 到 10, 而不是从 0 到 9 或
从 1 到 10)

(b) 做同 (a) 一样的事, 不过这次使用 range() 内建函数。

a = 0
while a <= 10:
    print a
    a+=1
a = 0
while a <= 10:
    print a
    a+=1
for a in range(11):
  print a
for a in range(11):
  print a

2–11.
带文本菜单的程序 写一个带文本菜单的程序,菜单项如下(1)取五个数的和 (2) 取五个数的平均值....(X)退出。由用户做一个选择,然后执行相应的功能。当用户选择退出时程序结束。 个 这 程序的有用之处在于用户在功能之间切换不需要一遍一遍的重新启你 动 的脚本。

list = [1,2,3,4,5,6,7,8]
x=1
sum = 0
while x:
    print "  菜单  "
    print"1.求8个数的平均值"
    print"2.求8个数的和"
    print"3.退出"
    number = int (raw_input('输入对应序号执行程序'))
    if number ==1:
        for i in list:
            sum+=i
        print sum
    elif number == 2:
        for i in list:
            sum+=i
        print sum/8
    else :
        x=0
list = [1,2,3,4,5,6,7,8]
x=1
sum = 0
while x:
    print "  菜单  "
    print"1.求8个数的平均值"
    print"2.求8个数的和"
    print"3.退出"
    number = int (raw_input('输入对应序号执行程序'))
    if number ==1:
        for i in list:
            sum+=i
        print sum
    elif number == 2:
        for i in list:
            sum+=i
        print sum/8
    else :
        x=0

1.求8个数的平均值
2.求8个数的和
3.退出
输入对应序号执行程序2
4