Python文件处理

2017-03-13  本文已影响0人  刘开心_8a6c

文件读取


整个读取


with open('pi_digits.txt') as file_object:

contents = file_object.read()

print(contents)

两个注意点:

逐行读取


filename = 'pi_digits.txt'

with open(filename) as file_object:

for line in file_object:

print(line)

将文件内容读取到内存中

存储到列表中


filename = 'pi_digits.txt'

with open(filename) as file_object:

lines = file_object.readlines()

for line in lines:

print(line.rstrip)

存储到字符串中


filename = 'pi_digits.txt'

with open(filename) as file_object:

lines = file_object.readlines()

pi_string= ''

for line in lines:

pi_stirng += line.strip()

print(pi_string)

print(len(pi_string))

注意点:

判断文件中是否包含某内容


filename = 'pi_digits.txt'

with open(filename) as file_object:

lines = file_object.readlines()

pi_string= ''

for line in lines:

pi_stirng += line.strip()

birthday = input('Enter your birthday, in the form mmddyy:')

if birthday in pi_string:

print('Your birthday appeears in the first million digits of pi!')

else:

print('Your birthday does not appear in the first million digits of pi.')

读json格式的数据


filename = 'numbers.json'

with open(filename) as f_obj:

numbers = json.load(f_obj)

print(numbers)


文件写入

写入空文件


improt json

filename = 'programing.txt'

with open(filename, 'w') as file_object:

file_object.write("I love programming")

写入json格式的数据


improt json

numbers = [2,3,5,7,11,13]

filename = 'numbers.json'

with open(filename, 'w') as f_obj:

json.dump(numbers, f_obj)


文件异常处理

很多初学者都没有在程序中写异常的意识,这会给程序带来很多危险,比如程序突然崩溃,攻击者可能会根据traceback对代码发起攻击,一般在涉及到数据交互,输入输出等地方,都要写异常处理语句。写法如例:


print("Give me two numbers, and I'll devide them.")

print("Enter 'q' to quit.")

while True:

first_number = input(\nFirst number:)

if first_number == 'q':

break

second_number = input(\nSecond number:)

try:

answer = int(first_number) / int(second_number)

except ZeroDivisionError:

print("You can't dividee by 0!")

else:

pirnt(answer)

上一篇 下一篇

猜你喜欢

热点阅读