Learn Python The Hard Way学习笔记


lesson3

python 中 % 表示求余
python 中 / 直接写整数的时候会将小数丢弃 不会四舍五入
中文必须在开头键入 # -*- coding: utf-8 -*- 。
一般单引号会被用来创建简短的字符串。'a' 'snow'
'''换行'''

lesson5

%r 用 rper() 方法处理对象
%s 用 str() 方法处理对象
%d 打印整数
%f 打印浮点数 %.2f 表示小数点后两位 可以指定小数点后的精度 默认显示6位小数
%i 格式化整数
%o 格式化无符号八进制数
%X 格式化无符号十六进制数(小写字母)
%X 格式化无符号十六进制数(大写字母)
%e 用科学计数法格式化浮点数
%E 作用和 %e 一样
%F 和 %f 一样
%g 根据值的大小决定使用 %f 还是 %e
%G 和 %g 一样
%c 格式化字符及 ASCII 码;
round() 方法返回浮点数 x 的四舍五入值

lesson6

%r 用来做 debug 比较好 因为它会显示变量的原始数据(raw data)而其它的符号则是用来向用户显示输出的

lesson11

当输入为纯数字时:
input 返回的是数值类型,如 int,float。
raw_inpout 返回的是字符串类型,string 类型。
输入字符串为表达式
input 会计算在字符串中的数字表达式,而 raw_input 不会。
输入"57 + 3",input 会得到整数60。
raw_input 会得到字符串"57 + 3"。
input() 希望能够读取一个合法的 python 表达式,即你输入字符串的时候必须使用引号将它括起来,否则它会引发一个

SyntaxError。

raw_input() 直接读取控制台的输入。
input() 本质上还是使用 raw_input() 来实现的,只是调用完 raw_input() 之后再调用 eval() 函数,所以,你甚至可以将表达式作为 input() 的参数,并且它会计算表达式的值并返回它。除非对 input() 有特别需要,否则一般情况下我们都是推荐使用 raw_input() 来与用户交互。

lesson13

argv 和 raw_input() 有什么不同?
如果参数是在用户执行命令时就要输入,那就是 argv。
如果是在脚本运行过程中需要用户输入,那就使用 raw_input()。
命令行参数是字符串吗?
在命令行输入数字,也需要用 int() 把它先转成整数,和在 raw_input() 里一样。

lesson15

txt = open(filename) 返回的是文件的内容吗?
不是,它返回的是一个叫做 “file object” 的东西,可以把它想象成一个磁带机或者 DVD 机。可以随意访问内容的任意位置,并且去读取这些内容,不过这个 object 本身并不是它的内容。
from sys import argv 是什么意思?
sys 是一个代码库,这句话的意思是从库里取出 argv 这个功能来,供使用。
open() 打开文件
f = open('/tmp/hello.txt','w')
open(name[,mode[,buffering]])
name 需要打开的文件名称
mode 打开模式
buffering 用来控制文件的缓冲,默认值为 0,表示不缓冲,设置为 1 就会有缓冲。
以下是 open() 函数的几个模式值
r  只读
r+ 读写
w  写 新建
a  追加
b  二进制模式
U  支持换行符
close() 关闭文件
read() 每次读取整个文件,它通常用于将文件内容放到一个字符串变量中。生成文件内容最直接的字符串表示,但对于连续的面向行的处理,它却是不必要的,并且如果文件大于可用内存,则不可能实现这种处理。
input=open('/tmp/python.data','r')  创建输入文件,读取文件。
input=open('/tmp/python.data')      创建输入文件,读取文件,r是默认值。
output=open('/tmp/python.data','w') 创建输出文件,写入文件。
aString=input.read()                把整个文件读进一个字符串
aString=input.read(N)               读取前面的 N 个字节到一个字符串
aString=input.readline(N)           读取下一个
分享:

评论