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. 解决GitHub添加sshkey仍然无法访问clone远程仓库的问题

    1 ssh -v git@github.com 通过这个命令打印调试信息 ebug1: expecting SSH2_MSG_NEWKEYS debug1: SSH2_MSG_NEWKEYS rece ...

  2. 网络初级篇之OSPF(二)实验

    一.实验目的:     下面关于OSPF的实验,仔细看配置过程,以增加对OSPF的理解. 二.实现目标:     使用OSPF实现所有主机之间的通信 三.配置过程: 1.AR1的配置过程:      ...

  3. 基于mini2440嵌入式Linux根文件系统制作(Initramfs和nfs两种跟文件系统)

    嵌入式系统由三部分构成: 1.bootoader---bootparameters---2.kernel 3.Root-filesysytem 一个内核可以挂载多个文件系统,但是有一个根文件系统所以叫 ...

  4. Java并发(基础知识)—— Executor框架及线程池

    在Java并发(基础知识)—— 创建.运行以及停止一个线程中讲解了两种创建线程的方式:直接继承Thread类以及实现Runnable接口并赋给Thread,这两种创建线程的方式在线程比较少的时候是没有 ...

  5. springmvc框架中的核心对象DispatcherServlet

    SpringMVC是Spring中的模块,它实现了mvc设计模式,首先用户发起请求,请求到达SpringMVC的前端控制器(DispatcherServlet),前端控制器根据用户的url请求处理器映 ...

  6. ubuntu16.04安装cuDNN

    cudnn的安装非常简单 (1)下载安装文件 按需求下载cudnn的安装文件:https://developer.nvidia.com/rdp/cudnn-archive Tar File的下载如下图 ...

  7. Java Pattern和Matcher字符匹配详解

    http://tool.oschina.net/uploads/apidocs/jquery/regexp.html https://blog.csdn.net/rentian1/article/de ...

  8. MHA介绍和基础、原理、架构、工具介绍

    一.MHA简介 软件简介 MHA(Master High Availability)目前在MySQL高可用方面是一个相对成熟的解决方案,它由日本DeNA公司youshimaton(现就职于Facebo ...

  9. k8sIngress资源

    k8s提供了两种内建的云端负载均衡机制用于发布公共应用,一种是工作于传输层的service资源,它实现的是TCP负载均衡器,另一种是Ingress资源,它实现的是HTTP(S)负载均衡器. 1)TCP ...

  10. LVS+Heartbeat安装部署文档

    LVS+Heartbeat安装部署文档 发表回复 所需软件: ipvsadm-1.24-10.x86_64.rpmheartbeat-2.1.3-3.el5.centos.x86_64.rpmhear ...