Python 列表推导式、矩阵、格式化输出

2023-11-10

 

列表推导式

列表推导式提供了从列表、元组创建列表的简单途径。语法:  

[表达式  for语句  if语句]

创建并返回一个列表。if语句可选。

 

示例:

list1=[1,2,3,4]  #使用元组也行

list2=[x*2 for x in list1]
print(list2)   #[2, 4, 6, 8]

list3=[x*2+1 for x in list1]
print(list3)  #[3, 5, 7, 9]

 

list1=[1,2,3,4]  

list2=[x*2 for x in list1 if x>2]  #if限定范围
print(list2)   #[6, 8]

 

list1=[1,3,5,7]  #使用元组也行,得到的仍然是列表
list2=[2,4,6,8]

list2=[x*y for x in list1 for y in list2 ]  #可使用多个for语句
print(list2)   #[2, 4, 6, 8, 6, 12, 18, 24, 10, 20, 30, 40, 14, 28, 42, 56]

 

 

 

 

矩阵

矩阵可使用列表\元组的嵌套来实现。

matrix=[[1,2,3],[4,5,6],[7,8,9],[10,11,12]]   #一个3*4的矩阵
"""
1   2   3
4   5   6
7   8   9
10  11  12
"""

del matrix[0][0]  #删除第一行的第一个元素
print(matrix)   #[[2, 3], [4, 5, 6], [7, 8, 9], [10, 11, 12]]

del matrix[0]   #删除第一行
print(matrix)  #[[4, 5, 6], [7, 8, 9], [10, 11, 12]]

matrix.clear()  #清空矩阵
print(matrix)  #[]

del matrix  #删除整个矩阵

#可使用循环来遍历矩阵

 

 

 

 

格式化输出

1、常用的输出方式
print("Download the file",end=" done\n")  # Unpack the file done
"""
以指定值结尾,缺省end时默认为\n,所以缺省end时会自动换行。
""" 


print("*"*50)   #分隔线效果


list=["Download the file","Unpack the file","Open the file"]
for x in list:
    print(x, end = " done\n")
"""
Download the file done
Unpack the file done
Open the file done
"""

 

 

2、转换为字符串
str1=str(1)  #转换为字符串
print(type(str1))  #<class 'str'>

a=10
str2=str(a)   #转换为字符串,a本身不变
print(str2)  #10
print(type(str2))  #<class 'str'>
print(type(a))  #<class 'int'>

 

 

3、对齐方式
str="hello"
print(str.ljust(20," "))  #左对齐,不足20个字符右边填充空格(凑足20个字符)
print(str.rjust(20," "))  #右对齐,不足20个字符时,左边填充空格
print(str.center(20," "))  #居中对齐,不足20个字符时,两端填充空格

 

 

4、格式化输出

旧版本的格式化输出:

name="张三"
age=12
score=99
print("%s今年%d岁,成绩%.1f分"%(name,age,score))  #张三今年12岁,成绩99.0分


"""
print("格式串"%(对应的值))   
有多个值时,值要放在()中。如果只有一个值,可以缺省():
print("我是%s"%name)

"""

 

 

新版本的格式化输出:

name="张三"
age=12
score=99
print("我是{0},今年{1}岁,成绩{2}分".format(name,age,score))  #我是张三,今年12岁,成绩99分
print("我是{},今年{}岁,成绩{}分".format(name,age,score))  #我是张三,今年12岁,成绩99分   {index}中的index可以缺省,缺省时默认依次为0,1,2,3....
print("我是{0},今年{1}岁,成绩{2:.1f}分".format(name,age,score))  #我是张三,今年12岁,成绩99.0分   可以指定具体格式
print("我是{},今年{}岁,成绩{:.1f}分".format(name,age,score))  #我是张三,今年12岁,成绩99.0分

 

转载于:https://www.cnblogs.com/chy18883701161/p/11297302.html

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Python 列表推导式、矩阵、格式化输出 的相关文章

随机推荐

  • SpringBoot执行定时任务

    SpringBoot执行定时任务 1 在启动类中加入 EnableScheduling来开启定时任务 package com example demo import org springframework boot SpringApplic
  • userdel: user xxx is currently used by process xxx 已解决

    第一种方法 说明有进程正在使用这个用户 就是以该用户的身份运行 把对应的进程杀了再删 ps u username awk print 1 grep vi pid xargs kill 9 deluser username 另一种方法 use
  • 逻辑回归,决策树,SVM,随机森林,GBDT,Xgboost,lightGBM的评分效果观察

    https blog csdn net weixin 41710583 article details 85016622
  • 面向对象-- 属性查找顺序以及绑定方法

    面向对象编程思想的本质就是将数据和功能绑定在一起 对象本质是容器 其将数据和功能整合在一起 所以在Python中 一切皆对象 对象 数据与功能的结合体 类 种类 相当于诸多对象共有的特征 数据 功能 类只描述对象公共的特征 不同的特征由对象
  • 【蚁群算法栅格图路径规划python】

    蚁群算法栅格图路径规划python 简单说几句 python代码 0 预安装库 1 调用模版 2 地图文件 3 栅格图 迭代图 3 ACO类 简单说几句 简单说几句 算法的基本逻辑请看其他文章 很多 不介绍 本文旨在提供一份python代码
  • WSL 错误 System has not been booted with systemd as init system (PID 1). Can‘t operate

    描述 项目 描述 操作系统 Windows 10 专业版 版本 WSL 2 前情 在 适用与 Linux 的 Windows 的子系统 WSL 默认情况下是无法使用 systemctl 命令 使用该命令 WSL 将抛出如下错误 System
  • pyinstaller打包exe文件

    pyinstaller是一个python第三方库 可以安装 用于打包py脚本文件成exe可执行程序给其他人使用 而不是需要python解释器执行py脚本 指令如下 pyinstaller F w py文件目录 F是只生成一个EXE文件 w是
  • 文字滚动

    不用JavaScript 不开定时器也可以实现文字滚动的效果 仅仅需要用一对
  • java 异常就是出错?快醒醒吧

    1 异常是什么 首先异常 Exception 和错误 Error 并不能划等号 顾名思义 它只是程序运行出现了不正常的情况 2 异常的家族 从图中我们可以看出Error和Exception属于一个家族的两兄弟 Exception中又分为两类
  • 关于RedisTemplate和StringRedisTemplate

    最近在开始在学习Redis以及如何在Java当中去使用Redis Redis是什么我这里就不说了 我主要想说的是Redis和Java当中Spring结合起来的时候 使用到的RedisTemplate和StringRedisTemplate
  • pycharm读取图片

    把图片整体存入数据库 encoding utf 8 import pymysql conn pymysql connect host 127 0 0 1 port 3306 user root passwd root db test sql
  • JS 取出某数组前n位的数据

    别再用 for 循环了 用 splice arr arr splice 0 n
  • 【Android】ViewBinding+DataBinding+MVVM新手快速上手

    为什么写这篇博客 网上大部分博客 代码量都比较大 把实际的业务都代入进去了 这篇博客的目的 就是为了讲解基本原理和使用思路 然后给出一个最简单的Demo 这里不讲解具体用法 那样篇幅会太长 直接看Demo代码就行 什么是ViewBindin
  • SFP光模块接口说明

    SFP光模块接口说明 1 引脚定义 Pin Name Function Description 1 VeeT 发射部分地 2 TX Fault 发射部分报错 3 TX Disable 关断发射 高电平或悬空有效 4 MOD DEF2 模块定
  • pclint检查linux代码,linux pclint

    这个插件只是分析已经生成的报告 并非去检查代码 比如配置的规则中有cppcheck库的 那么运行sonar runner时只会读取你用cppcheck检查后生成的问题报告 我也遇到过同样的问题 我是这样解决的 1 要先安装cppcheck工
  • 利用Github搭建自己专属博客

    这是一个在Windows简易的搭建博客的方法 建立使用Jekyll构建自己的博客 所以这一篇文章采用fork别人的模板来构建 偷懒 在此之前需要满足一下条件 注册一个Github账号 本地安装Git 并且能实现Git向自己的仓库push文件
  • minikube 实战篇 - 镜像打包部署 - 1

    实战篇 镜像打包 如果你是一个JAVA开发人员 需要把spring项目部署到minikube中 该怎么操作是一个需要探索的问题 这篇文章会讲解如何打包部署项目 1 生成demo项目 在浏览器端输入https start spring io
  • 第9章 Stata聚类分析

    目录 9 1划分聚类分析 1 数标准化处理 2 K个平均数的聚类分析 3 K个中位数的聚类分析 案例延伸 1 采用其他相异性指标 2 设置聚类变量的名称 3 设置观测样本为初始聚类中心 4 排除作为初始聚类中心的观测样本 9 2层次聚类分析
  • gdb 常用命令

    run r 运行 运行带参数的可执行文件 r 后面接参数 例如 gdb executablefile gdb r arg1 arg2 arg3 continue c 继续运行 next n 单步运行 step s 如果有函数则进入函数执行
  • Python 列表推导式、矩阵、格式化输出

    列表推导式 列表推导式提供了从列表 元组创建列表的简单途径 语法 表达式 for语句 if语句 创建并返回一个列表 if语句可选 示例 list1 1 2 3 4 使用元组也行 list2 x 2 for x in list1 print