python3 输入输出(17)

19 篇文章 0 订阅
14 篇文章 0 订阅
import  math
#Python3 输入和输出
'''
Python两种输出值的方式: 表达式语句和 print() 函数。
第三种方式是使用文件对象的 write() 方法,标准输出文件可以用 sys.stdout 引用
将输出的值转化成字符串形式
str(): 函数返回一个用户易读的表达形式。
repr(): 产生一个解释器易读的表达形式。
'''

for x in range(1, 11):
    print(repr(x).rjust(2), repr(x*x).rjust(3), end=' ')
    # 注意前一行 'end' 的使用
    print(repr(x*x*x).rjust(4))

#rjust() 方法, 可以将字符串靠右, 并在左边填充空格。
#还有类似的方法, 如 ljust() 和 center()  分别是靠左,居中

# zfill() 左边以0填充
print('123'.zfill(3)) #123
print('123'.zfill(4)) #0123
print('123'.zfill(5)) #00123

#位数不够才会填0

# format() 的使用
print(' {0}今年{1}岁了'.format('小明',18)) #小明今年18岁了
#!a (使用 ascii()), !s (使用 str()) 和 !r (使用 repr()) 可以用于在格式化某个值之前对其进行转化:
print('a是{}'.format('a')) #a是a
print('a是{!a}'.format('a')) #a是'a'
print('a是{!r}'.format('a')) #a是'a'
print('a是{!s}'.format('a')) #a是a

print('常量Π的值近似为 {0:.5f}。'.format(math.pi)) #常量Π的值近似为 3.14159。

#传入一个字典, 然后使用方括号 [] 来访问键值 :
dic={'中国':'北京','美国':'纽约','英国':'伦敦'}
print('中国的首都是{0[中国]},美国的首都是{0[美国]},英国的首都是{0[英国]}'.format(dic))

#也可以通过在 dic 变量前使用 ** 来实现相同的功能:
print('中国的首都是{中国:},美国的首都是{美国:},英国的首都是{英国:}'.format(**dic))

#还可以使用;类似于c语言的处理方式
name='小明'
age=18
print('%s今年%d岁了'%(name,age))

#读取键盘输入
#Python提供了 input() 内置函数从标准输入读入一行文本,默认的标准输入是键盘。
#input 可以接收一个Python表达式作为输入,并将运算结果返回。

print("请输入:")
str=input()
print('你输入的是:{}'.format(str))



'''
读和写文件
open() 将会返回一个 file 对象,基本语法格式如下:
open(filename, mode)
fileName:你将要读取的文件名称
mode:
r	以只读方式打开文件。文件的指针将会放在文件的开头。这是默认模式。
rb	以二进制格式打开一个文件用于只读。文件指针将会放在文件的开头。
r+	打开一个文件用于读写。文件指针将会放在文件的开头。
rb+	以二进制格式打开一个文件用于读写。文件指针将会放在文件的开头。
w	打开一个文件只用于写入。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。
wb	以二进制格式打开一个文件只用于写入。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。
w+	打开一个文件用于读写。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。
wb+	以二进制格式打开一个文件用于读写。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。
a	打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。
ab	以二进制格式打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。
a+	打开一个文件用于读写。如果该文件已存在,文件指针将会放在文件的结尾。文件打开时会是追加模式。如果该文件不存在,创建新文件用于读写。
ab+	以二进制格式打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。如果该文件不存在,创建新文件用于读写。
'''

#我在F:/python/pythonTest.txt 文件中写如下内容:
'''
1234bcd
dgfghfg
'''
fp=open("F:/python/pythonTest.txt",'r')
text=fp.read()
print("你读取的数据是:{}".format(text))
fp.close()
#输出如下内容
#你读取的数据是:1234bcd
#dgfghfg


#读取一行
fp=open("F:/python/pythonTest.txt",'r')
text=fp.readline()
print("读取一行内容是:{}".format(text))
fp.close()
#输出内容:读取一行内容是:1234bcd

#写文件
fp=open("F:/python/pythonTest.txt",'a+')
fp.write("\ntest Write")
fp.close()

fp=open("F:/python/pythonTest.txt",'r')
text=fp.read()
print("追加了内容之后:{}".format(text))
fp.close()
'''
输出的内容是:
追加了内容之后:1234bcd
dgfghfgtest Write
test Write
'''


'''
文件的相关函数还有:
f.tell() 返回文件对象当前所处的位置, 它是从文件开头开始算起的字节数。
f.seek() 如果要改变文件当前的位置, 可以使用 f.seek(offset, from_what) 函数。
from_what 的值, 如果是 0 表示开头, 如果是 1 表示当前位置, 2 表示文件的结尾,例如:
seek(x,0) : 从起始位置即文件首行首字符开始移动 x 个字符
seek(x,1) : 表示从当前位置往后移动x个字符
seek(-x,2):表示从文件的结尾往前移动x个字符
'''


'''
python的pickle模块实现了基本的数据序列和反序列化。
通过pickle模块的序列化操作能够将程序中运行的对象信息保存到文件中去,永久存储。
通过pickle模块的反序列化操作,能够从文件中创建上一次程序保存的对象。
pickle.dump(obj, file, [,protocol])

x = pickle.load(file)
'''

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值