python基础语法--输入和输出

news2024/11/30 14:31:42

一、 输入 input()

python使用input输入变量,input输入的变量为字符串形式,可以通过其他方式转换为整型或其他类型。

(1)单行读入已知个数的字符串或数字

  • 读入字符串

# 单行读入字符串a,并给出一句输入提示 
a = input("请输入一个数:") 

# 单行读入含有一个空格的字符串,并按照空格分隔开,存进a,b中 
a, b = input().split()
 
# 单行读入含有一个逗号的字符串,并按照逗号分隔开,存进a,b中 
a, b = input().split(",")
  • 读入数字

# 单行读入单个整数b
b = int(input()) 
      
# 单行读入单个浮点数b 
b=float(input())
       
# 单行读入用空格隔开的两个整数a,b 
a, b = map(int,input().split())    

(2)单行读入不定个整数,储存在列表中

# 单行读入不定个整数(整数之间用空格分隔), 从0开始存入列表a中
a = list(map(int,input().split()))

(3)先输入数字n,再输入n行数,每行一个数

# 先输入一个整数, 表示个数
n = int(input())
# n行, 每行输入一个数字
for i in range(n):
    a = int(input())

或者:

# 先输入一个整数, 表示个数
n = int(input())
# n行,每行输入一个整数
a = [int(input()) for i in range(n))]

(4)先输入数字n,再输入n行数,每行三个数,储存在三个列表中,用空格分隔

# 输入一个整数,表示行数
n = int(input())
# 创建三个空列表
x=[]
y=[]
z=[]
# 输入n行,每行输入3个整数,整数之间使用空格分隔
for i in range(n):
    a, b, c = map(int,input().split())
    x.append(a)
    y.append(b)
    z.append(c)

二、输入 print()

(1) 单行输出已知个数的字符串或数字

a = 1
b = 2
print(a, b) # 输出结果为:1 2

c = "HelloWorld"
print(a, b, c) # 输出结果为:1 2 HelloWorld

(2)格式化输出

可以调用方法 format 并使用花括号作为占位符,从而得到格式化字符串。

最简单的方法就是使用内置函数format得到格式化字符串,它与字符串的方法format是等价的,如:

a = 1
b = 1.2
print(f'a = {a}, b = {b}')

下面主要介绍字符串的方法format,不过相关细节都是相同的。

# 格式化输出字符串

book = "《数据结构与算法》"
s = '买了一本书:{}'.format(book)
print(s)

# 也可以直接这样写
print('买了一本书:{}'.format(book))

# 输出结果为  买了一本书:《数据结构与算法》

price 68.88
s='花了{},买了一本书:{}'.format(price,book)
print(s)
# 花了68.88,买了一本书:《数据结构与算法》

如果占位符 {} 中不指定参数,方法format的参数会按顺序依次匹配所有的占位符{}。

我们还可利用参数指定某个占位符使用哪个变量进行打印:

# 占位符{}中可以指定位置参数,0表示方法format的第1个参数,1表示方法format的第2个参数
s = '花了{0},买了一本书:{1},只花了{0}!'.format(price,book)
print(s)
# 花了68.88,买了一本书:《数据结构与算法》,只花了68.88!

可以在方法format中指定关键字参数的名称和值,在占位符[}中指定关键字参数的名称。

s = '花了{p},买了一本书:{b},只花了{p}!'.format(p = price, b = book)
print(s)

# 格式化输出整数

  • 以某个进制的格式进行输出
# 以十进制的形式输出
print('{:d}'.format(58)) # 58

# 以二进制的格式输出
print('{:b}'.format(58)) # 111010

# 以十六进制的格式输出(a~f是小写)
print('{x}'.format(58)) # 3a
# 以十六进制的格式输出(A~F是大写)
print('{:X}'.format(58)) # 3A
  • 以某个精度的格式进行输出

将整数以浮点数的形式进行打印:

# 浮点数
print('{:f}'.format(58)) # 58.000000

占位符 {} 使用冒号指定宽度,如果数字的宽度没有达到指定的宽度,则在左边使用空格进行补齐:
 

补充:如果字符串的宽度没有达到指定的宽度,则在右边使用空格进行补齐:

print('{:10}'.format(58))
print('{:10}'.format('58'))

打印3.1415926的三位:

print('{:.3}'.format(3.1415926))

保留3.1415926三位小数进行打印:

print('{:.3f}'.format(3.1415926))

同时指定宽度和精度进行打印:

print('{:7.3f}'.format(3.1415926))

注意:这个小数点也占用一个宽度。

只取字符串中的前几位:

print('{:.5}'.format('HelloWorld'))

只取字符串中的前几位,并以某个宽度进行打印:

print('{:10.5}'.format('HelloWorld'))
补充:

使用 ,作为千位的分隔符:

print('{:,}'.format(12345678) # 12,345,678

指定某个时间格式进行打印:

from datetime import datetime
print('{:%Y-%m-%d %H:%M:%S}'.format (datetime(2018,8,18,18,18,18)))

这种指定某种格式进行打印的同时,都可以指定 {} 打印哪个参数:

print('{0:b}'.format(58, 2)) #111010
print('{num1:b}'.format(num1 = 58, num2 = 2)) # 111010


本文参考以下资料,在此对该作者表示感谢:
链接:https://www.jianshu.com/p/30c2ae833ddd

《图解Python》学习路径:图解Python视频教程_Python学习路线-51CTO学堂

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1586241.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【汇编语言实战】求三个已知数最大值

C语言描述该程序流程&#xff1a; #include <stdio.h> int main() {int a10,b20,c15;//scanf("%d %d",&a,&b);if(a>b){if(a>c){printf("%d",c);}else{printf("%d",a);}}else{if(b>c){printf("%d",b);}else{pr…

惊!磁盘未初始化,数据如何拯救?

在数字化时代&#xff0c;磁盘作为存储数据的重要载体&#xff0c;其稳定性直接关系到数据的安全。然而&#xff0c;有时我们会遭遇一个令人头疼的问题——磁盘没有初始化。这意味着磁盘无法被操作系统正常识别和使用&#xff0c;其中的数据仿佛被锁进了一个无形的牢笼。那么&a…

2024全面启动:《水资源基础调查实施方案》解读

【引言】 去年&#xff0c;随着自然资源部《关于开展水资源基础调查工作的通知》&#xff08;自然资发〔2023〕230号&#xff09;的发布&#xff0c;一项旨在全面掌握我国水资源状况、助力生态文明建设与经济社会发展的重大工程——水资源基础调查正式启动。 近日&#xff0c…

uniapp小程序给指定的页面新增下拉刷新功能

需求:有些页面需要实时更新数据,但是又不能做实时刷新,所以给用户一个手动下拉刷新指定接口的功能 第一步:在pages.json给页面加"enablePullDownRefresh": true配置 第二步:在指定页面写onPullDownRefresh方法,和methods同级 onPullDownRefresh() {//加个定时器1秒…

在隐私计算应用中和数链具备哪些技术特点?

在加速“可信数字化”进程的背景下&#xff0c;我国区块链产业将在打造新型平台经济&#xff0c;开启共享经济新时代的同时&#xff0c;带动数字经济“脱虚向实”服务实体经济。 和数软件在加速数字化进程的同时&#xff0c;进一步服务实体经济&#xff0c;提高实体经济的活力…

windows安装Redis,Mongo,ES并快速基本掌握开发流程

前言 这里只是一些安装后的基础操作&#xff0c;后期会学习更加深入的操作 基础操作 前言RedisRedis启动idea集成Redisjedis技术 Mongodbwindows版Mongodb的安装idea整合Mongodb ES(Elasticsearch)ESwindows下载ES文档操作idea整合ES低级别ES整合高级别ES整合 Redis Redis是…

如何在项目中引入vue-router

vue3对应vue-router4 先安装最新版的vue-router pnpm i vue-router 在src目录下新建router文件夹&#xff0c;在其下创建index.js文件 在index.js文件下写 // 创建一个路由器&#xff0c;并暴露出去 // 第一步&#xff1a;引入createRouter import {createRouter,createWeb…

Terraform进阶技巧

Terraform 是管理 IaC 的强大工具&#xff0c;常用常新。在这一部分我们将探索 Terraform 的进阶技能&#xff0c;包括 Terraform 模块、远程状态存储、Terraform 工作区以及自定义 Provider。 1、Terraform 模块 Terraform 模块是可复用的 Terraform 代码包&#xff0c;其…

华为 2024 届校园招聘-硬件通⽤/单板开发——第十套

华为 2024 届校园招聘-硬件通⽤/单板开发——第十套 部分题目分享&#xff0c;完整版带答案(有答案和解析&#xff0c;答案非官方&#xff0c;未仔细校正&#xff0c;仅供参考&#xff09;&#xff08;共十套&#xff09;获取&#xff08;WX:didadidadidida313&#xff0c;加我…

搭建PyTorch神经网络进行气温预测(手写+调包两种方法)(保证学会!)+找到神经网络的最优情况

代码上有注释&#xff01;&#xff01;&#xff01;&#xff01;&#xff01;&#xff01; 本篇主要包括三大部分&#xff1a; 第一部分&#xff1a;导入数据集导入第三方库数据集简单介绍与可视化数据集简单预处理 第二部分&#xff1a;手写神经网络代码实现气温预测&#…

线性表概念及实现1

文章目录 前言一、线性表1.定义2.特点3.一般线性表的抽象数据类型定义 二、线性表的顺序存储&#xff08;顺序表&#xff09;1.基本概念2.数组实现顺序表3.顺序表中基本操作的具体实现 总结 前言 T_T此专栏用于记录数据结构及算法的&#xff08;痛苦&#xff09;学习历程&#…

repl_backlog原理

2.2.3.repl_backlog原理 master怎么知道slave与自己的数据差异在哪里呢? 这就要说到全量同步时的repl_baklog文件了。 这个文件是一个固定大小的数组&#xff0c;只不过数组是环形&#xff0c;也就是说角标到达数组末尾后&#xff0c;会再次从0开始读写&#xff0c;这样数组…

Stack_经典例题_最小栈

题目&#xff1a; 题目分析&#xff1a; 在满足栈的特点的同时&#xff0c;还需要设计一个接口&#xff0c;就是获取栈内的最小元素&#xff01; 解题思路&#xff1a; 因为是栈&#xff0c;所以不好遍历的&#xff01;所以这题的方式不能采用遍历的方式&#xff0c;如果采取…

文心一言 VS 讯飞星火 VS chatgpt (234)-- 算法导论17.2 2题

二、用核算法重做练习17.1-3。练习17.1-3的内容是&#xff1a;假定我们对一个数据结构执行一个由 n 个操作组成的操作序列&#xff0c;当 i 严格为 2 的幂时第 i 个操作的代价为 i &#xff0c;否则代价为1。使用聚合分析确定每个操作的摊还代价。 文心一言&#xff1a; 练习…

国产HMI芯片Model3C ——工业品质价格亲民

工业级芯片相较于消费级芯片&#xff0c;在性能上确实拥有显著的优势&#xff0c;尤其对于带彩屏显示或HMI的产品来说&#xff0c;这种优势表现得尤为突出。 首先&#xff0c;对于带彩屏显示或HMI人机交互的产品来说&#xff0c;高性能的芯片是保证流畅的用户体验和快速响应的…

中颖51芯片学习5. 类EEPROM操作

中颖51芯片学习5. 类EEPROM操作 一、SH79F9476 Flash存储空间1. 特性2. 分区3. OP_EEPROMSIZE选项设置3. 编程接口4. 代码保护控制模式简介&#xff08;1&#xff09;**代码保护模式0&#xff1a;**&#xff08;2&#xff09;**代码保护模式1&#xff1a;**&#xff08;3&#…

VS2019 VS2022 LNK2019 无法解析的外部符号sprintf

解决方案&#xff1a; 项目属性》配置属性》链接接-》输入》附加依赖项&#xff0c;增加 legacy_stdio_definitions.lib legacy_stdio_definitions.lib 是一个库文件&#xff0c;通常与使用 Visual Studio 编译的 C/C 项目相关。它的作用是解决在使用新版本的 Visual Studio 编…

选以太网不选IB?AI网络构建未来趋势预测

据美国媒体Information报道&#xff0c;OpenAI和微软计划用千亿美金打造一款名为“Stargate”的超级计算机。 在选择网络方案时&#xff0c;即便微软是Infiniband的用户&#xff0c;OpenAI还是更加倾向使用以太网电缆而不是Infiniband电缆&#xff08;简称IB&#xff09;&…

LangChain-10(2) 加餐 编写Agent获取本地Docker运行情况 无技术含量只是思路

可以先查看 上一节内容&#xff0c;会对本节有更好的理解。 安装依赖 pip install langchainhub编写代码 核心代码 tool def get_docker_info(docker_name: str) -> str:"""Get information about a docker pod container info."""result…

Python 复杂密码图形化生成工具,支持选择生成10位和12位复杂密码(初版)

代码 #!/usr/bin/env python # -*- coding: utf-8 -*- # Time : 2024/3/26 15:22 # Author : wyq # File : 部署测试.py import random import string from tkinter import *def generate_password(length):characters string.ascii_letters string.digits string.p…