IO文件输出

问题1:Python如何实现print不换行?

默认情况下Python的print()函数是换行的,如

print("你好大成")
print("!!!") #输出
你好大成
!!!

看下print()函数源代码,默认为end="\n"(换行), \n表示换行符

所以,如果想要不换行,就要改变end 的换行属性,将end的\n 替换成任意你想要的值即可。

利用print换行就可以实现跨行拼接的效果哦!

print("你好大成",end="")
print("!!!") #输出
你好大成!!! print("你好大成",end="@@我们晚上去吃毛肚吧##")
print("???!!!") #输出
你好大成@@我们晚上去吃毛肚吧##???!!!

问题2:Python如何实现输入交互?

通过input()函数实现

python3里将raw_input()和input()进行了整合,只保留了input(),返回的是字符串类型;

a = input("请输入你的名字:")
print(a)
print(type(a)) c=input("请输入你的年龄:")
print(c)
print(type(c)) # 输出
请输入你的名字:大橙子
大橙子
<class 'str'>
请输入你的年龄:30
30
<class 'str'>

所以,当你需要浮点型或者整数类型的时候,需要对输入的字符串做转换

a = input("请输入你的名字:")
print(a)
print(type(a)) c=int(input("请输入你的年龄:"))
print(c)
print(type(c)) b = float(input("你每个月交多少税?\n"))
print(b)
print(type(b)) # 输出
请输入你的名字:大橙子
大橙子
<class 'str'>
请输入你的年龄:30
30
<class 'int'>
你每个月交多少税?
644.54
644.54
<class 'float'>

问题3:Python如何操作文件?

1.  写文件:

(1)先打开文件:open()函数

(2)写入文件:write()函数

(3)关闭文件:close()函数

a = input("请输入你的名字:")
print(a)
print(type(a)) file = open("test.txt",'w') # 打开文件,往文件里写东西,要把mode值改为w
file.write(a) # 把内容写入文件
file.close() # 关闭刚才打开的test.txt文件

写文件的时候默认没有指定encoding编码方式,可以在代码里强制指定,也可以在编辑器里设定,根据项目需要来定

utf-8是世界计算机里的通用编码语言,不管什么语言都可以用utf-8编码识别

a = input("请输入你的名字:")
print(a)
print(type(a)) file = open("test.txt",'w', encoding='utf-8') # 打开文件,往文件里写东西,要把mode值改为w
file.write(a) # 把内容写入文件
file.close() # 关闭刚才打开的test.txt文件
open()函数mode的参数值:

  “r”:打开阅读(默认)

  “w”:打开进行写入,首先截断文件,如果文件里已经有内容了,已经存在的内容会被覆盖

  “x”:创建一个新文件并打开它进行写入

  “a”:打开进行写入,如果文件存在,则附加到文件结尾

  “b”:二进制模式

  “t”:文本模式(默认)

  “+”:打开磁盘文件进行更新(读写)

2. 读文件

file = open("hello.py" , "r")  # 先打开文件
b = file.read() # 在读取文件内容
file.close() # 关闭刚打开的文件
print(b)

练习题

# 根据用户输入的文件名,打开文件,然后打印出文件的内容

fileName = input("请输入文件名:\n")
file = open(fileName,'r',encoding="utf-8")
fileText = file.read()
print(fileText)

问题4:字符串格式化怎么操作?

两种常用的字符串格式化方法:

1. %方式

print("物美今天搞活动,满%s元, 减%s元" %(200,60))
print("物美今天搞活动,满%d元, 减%s元" %('',60)) # 会报错,因为参数值是字符串,前面接收的是数值 # 缺点:参数类型必须与接收参数的类型相同
print("八进制 %o ,\n十进制 %i, \n十六进制 %x ,\n科学计数 %e ,\n浮点数 %f"
%(99, 99,99,999.9999999,99.999))
# 满足6位的,不用补齐,保留四位小数
print("浮点数的格式化%06.4f" %(66666666.66666666)) # 06表示的是宽度,不足6位的用0补齐,保留四位小数
print("浮点数的格式化%06.4f" %(6666.66666666)) #输出
浮点数的格式化66666666.6667
浮点数的格式化6666.6667

2.format方式(Python3里新的字符串格式化方法,推荐)

print("物美今天搞活动,满{0}元, 减{1}元".format(200,60))
print("物美今天搞活动,满{0}元, 减{1}元".format('',60))
print("物美今天搞活动,满{}元, 减{}元".format('',60)) # {}里的数字,表示的是format()里参数的位置
# {}里没有数字时,默认按照format()里参数的位置往{}里填值
# 优点:规避了%方式里参数前后类型不一致的缺点
print("八进制 {:o} ,十进制 {:d}, 十六进制 {:x} ,科学计数 {:e} ,浮点数 {:.2f}".format(99, 99,99,999.9999999,666.6666))
print("八进制 {:o} ,十进制 {:04d}, 十六进制 {:x} ,科学计数 {:e} ,浮点数 {:.2f}".format(99, 99,99,999.9999999,666.6666))
print("八进制 {:o} ,十进制 {:04d}, 十六进制 {:x} ,科学计数 {:e} ,浮点数 {:08.2f}".format(99, 99,99,999.9999999,666.6666))
# :04 表示宽度是4位,不足4位用0补齐
# :08.2f 表示宽度是8位,包含小数点,不足8位用0补齐,保留2位小数点

第一篇 python数据类型的更多相关文章

  1. Python开发 第一篇 python的前世今生

    Python前世今生 python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的脚本解释程序,作为ABC ...

  2. Python 学习 第一篇:数据类型(数字,集合,布尔类型,操作符)

    Python语言最常用的对象是变量和常量,常量的值是字面意思,其值是不可变的,变量的值是可变的,例如,123,"上海"是常量,而a=1,a=2,其中a是变量名.内置的核心数据类型有 ...

  3. 第一篇 Python的数据类型

    Python的标准数据类型有五种: (1)字符串 (2)数字(包括整数,浮点数,布尔,复数) (3)列表(list) (4)元组(tuple) (5)字典(dict) 注:使用type函数可以查看对象 ...

  4. 第一篇 Python图片处理模块PIL(pillow)

    本篇包含:一.Image类的属性:1.Format   2.Mode   3.Size    4.Palette    5.Info                   二.类的函数:1.New   ...

  5. 第一篇:python基础

    python基础   python基础 本节内容 python起源 python的发展史 为什么选择python3 第一个python程序 变量定义 表达式和运算符 用户输入 流程控制 判断 流程控制 ...

  6. python第一篇-------python介绍

    一.python介绍 python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,Guido开始写Python语言的编译器.Python这个名字,来自Guido所 ...

  7. Python基础第一篇-------python的介绍

    一.python的介绍 python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,吉多·范罗苏姆(中文名字:龟叔)为了在阿姆斯特丹打发时间,决心开发一个新的脚本 ...

  8. 小白的第一篇python博客

    学习python课程三天,先了解了计算机的历史及各种发展史,python的历史及部分语法,python主要学习内容有"hello world",int常量.str字符串,print ...

  9. 第九篇 Python数据类型之集合

    集合 set 写在最前,必须要会的:1.长度len2.成员运算in和not in3.|合集4.&交集5.-差集6.^对称差集7.==8.父集:>,>= 9.子集:<,< ...

随机推荐

  1. JVM内存区域划分总结

    发现网上有两个版本的JVM内存划分,一个是按照<深入理解JVM虚拟机>上的版本,包含程序计数器等,按照是否线程共享划分. 另一个我觉得更好记一些,也更适合我自己,在这里记录一下. 首先上思 ...

  2. java8学习之Collectors工厂类源码分析与实战

    如上一节[http://www.cnblogs.com/webor2006/p/8360232.html]在结尾处谈到的,彻底理解了Collector收集器之后,有必要对其系统Collectors实现 ...

  3. Thumbnailator 缩略图

    Thumbnailator 是一个为Java界面更流畅的缩略图生成库.从API提供现有的图像文件和图像对象的缩略图中简化了缩略过程,两三行代码就能够从现有图片生成缩略图,且允许微调缩略图生成,同时保持 ...

  4. arm开发板make编译时遇到 make[2]:*** [s-attrtab] 已杀死 问题的解决方案

    未验证 出现“make[2]: *** [s-attrtab] 已杀死”log 是由于内存不足 解决方案 增加swapfile 步骤如下: 1. 查看当前swapfile状态 root@ubuntu: ...

  5. loj2589 「NOIP2009」Hankson 的趣味题

    对于质因数分解理解还不到位. 此题可知$lcm$是$x$的倍数,$x$是$lcm$的约数,只要在$lcm$的分解质因数里对每一个质因子讨论种数即可. 具体来说,对于$lcm$的一个质因子$p$,讨论$ ...

  6. selenium环境搭建:Error: could not find java.dll 报错问题

    搭建java环境,参照其他的安装步骤,搭建即可. 问题:出现如下报错信息. Error: could not find java.dll Error: Could not find Java SE R ...

  7. SharpCompress 压缩解压

    public class SharpCompressHelper { public static void UnRAR(string srcUrl,string targetUrl) { using ...

  8. conda退出base 环境

    安装conda后取消命令行前出现的base,取消每次启动自动激活conda的基础环境   方法一: 每次在命令行通过conda deactivate退出base环境回到系统自动的环境 方法二 1,通过 ...

  9. BZOJ 3173: [Tjoi2013]最长上升子序列 Splay

    一眼切~ 重点是按照 $1$~$n$ 的顺序插入每一个数,这样的话就简单了. #include <cstdio> #include <algorithm> #define N ...

  10. POJ 1995(有关快速幂运算的一道水题)

    Raising Modulo Numbers Time Limit: 1000MS   Memory Limit: 30000K Total Submissions: 9745   Accepted: ...