python从0开始学习(三)

目录

前言

1、类型转换

1.1 隐式类型转换

1.2 显式类型转换

2、eval函数

总结


前言

        上篇我们讲了python中的变量与常量,以及变量类型。本篇文章将接着往下讲。

1、类型转换

        python中的数据类型转换包括两种:隐式类型转换和显式类型转换。

1.1 隐式类型转换

        隐式类型转换是指在python在计算时会对数据进行自动的类型转换,比如:一开始我们设定两个整数a和b,它们的值分别是10和3,那么如果我们用c这个变量保存a除b的结果时,c的类型就会自动转化为浮点型,因为10除3的结果是小数,因此python会自动将类型转化为浮点型。

        下面看例子:

a=10
b=3
c=a/b
print(c,type(c))

        可以看到,c的值最后是3.333...。而后我们用type函数测试c的类型,得到的结果是float类型。

1.2 显式类型转换

        显示类型转换是我们人为地使用函数将数据转化成我们想要的类型:

函数描述说明
int(x)将x转化为整数类型
float(x)将x转化为浮点数类型
str(x)将整数x转化为一个字符
ord(x)将一个字符x转化为其对应地整数值
hex(x)将一个整数x转化为一个十六进制字符串
oct(x)将一个整数x转化为一个八进制字符串
bin(x)将一个整数x转化为一个二进制字符串

        如上表格,记录了显式类型转换会用到的函数。下面我们来举例子:

print(float(10))
print(int(3.14))
print(int(3.9))
print(int('100')+int('200'))
print(chr(100))
print(ord('彭'))

        运行结果如下:

        第一行我们将10转化为float可以看到它变成了小数10.0,用int将3.14和3.9转化为整数类型输出都为3,因此了解int类型强转小数只保留整数部分,不存在四舍五入。第四行,将两个字符'100'和'200'强制类型转化为整数,相加后得到300,但是需要注意,我们无法将'3.14'这样的数转化成整型,因为它本身不是整型,所以不能" int('3.14') "这样去操作。用chr转化100,python会在unicode表中找到100对应的字符进行输出,这个结果为d。最后ord('彭'),这样转化,python会在unicode表中找到'彭'这个字对应的编号进行输出,这个编号是24429。剩下的转化类型函数也和上述相似,就不全部讲解了。

        数值类型转换就讲到这。

2、eval函数

        现在讲解eval函数,这是一个python自带的函数,可以直接使用,跟print和input一样。它的作用是:去掉字符串最外侧的引号,并按照python语句方式去指向去掉引号后的字符串。eval函数经常和input函数一起使用。

        eval函数的语法形式:

        变量=eval(字符串)

        举例说明:

s='3.14+3'
print(type(s))
print(eval(s),type(eval(s)))

        输出结果如下:

        说明,s本身是一个字符串类型,但是eval(s)将会执行3.14+3这个加法操作,得到的结果为6.14,最后多出的1是python计算小数时正常的偏差,最后计算结果类型为'float'。这就是eval函数的作用。

        eval函数经常和input一起使用,用来获取用户输入的数值。因为对于input的结果,python会自动处理为字符串类型,所以加上eval函数,就能读取到其数值类型。

总结

        本篇文章的内容就先讲到这,主要讲解了类型转换,包括显式类型转换和隐式类型转换。以及eval函数的使用。希望对你有所帮助。

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

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

相关文章

SAPUI5基础知识1 - 概览,库,支持工具,自学教程

1. SAPUI5 概览 1.1 SAPUI5 SAPUI5是一种用于构建企业级Web应用程序的开发框架。它是由SAP开发的,基于HTML5、CSS3和JavaScript技术。 SAPUI5提供了一套丰富的UI控件和工具,使开发人员能够快速构建现代化、可扩展和可定制的应用程序。 它还提供了数据…

西门子数控网络IP设定配置

总结:menuselect-诊断-屏幕下方右翻页找到tcp/ip,进去选择tcp/ip诊断,进去选择x130网口,点击更改, 如果没有更改,menuselect-调试-口令,输入口令 sunrise 然后重新配置tcp/ip,配置完…

Qt 6 开源版(免费) -- 在线安装图解

经常遇到询问:有没有Qt6安装包? ......,真没有呢~~ 从Qt6起,它整了两个重大改变(并非指技术): 在线安装,不再提供单独的安装包主推收费的商业版 当然的,为了培养市场…

SPSS之聚类分析

SPSS中系统聚类分析功能在【分析】—【分类】—【系统聚类】中完成。系统聚类有两种类型,一种是对样本进行聚类,称为Q型聚类;一种是对变量进行聚类,称为R型聚类。在【系统聚类分析】—【聚类】框下选择【个案】——Q型聚类&#x…

微信小程序生成二维码加密(CryptoJS4.0加密PHP8.0解密)AES方式加密

1、小程序创建 crypto-js.js和crypto.js两个文件(点击文件即可) 2、小程序js页面引入 var crypto require(../../utils/crypto.js);//注意路径是否正确3、使用 let data {id: that.data.id,name: dx}console.log(JSON.stringify(data))console.log(&…

iOS - Undefined symbols: 解决方法

Undefined symbols: 是让人苦恼的报错,如何知道是 哪个 symbols 不对呢? 今天探索到下面的方法: 1、点击导航上方 最右侧的按钮,查看历史报错 2、选中报错信息,右键选择 Expand All Transcripts 在出现的详细信息面…

FreeRTOS软件定时器(1-18)

软件定时器简介 定时器:从指定的时刻开始,经过一个指定时间,然后触发一个超时事件,用户可以自定义 定时器周期。 硬件定时器:芯片本身自带的定时器模块,硬件定时器的精度一般很高,每次在定时时…

Java常用命令总结 持续更新中!!!

蓝桥杯JAVA组 推荐输入输出示例 // 基础输入 import java.util.*;public class Main{public static void main(String[] args){} }// 非静态方法调用 new Main.Solution();//static函数里面调用非static函数 类.函数// 更快的输入方式 BufferedReader // 更快的输出方式 Print…

js监听页面的显示和隐藏

下方微信公众号 和微信小程序推荐 js监听页面的显示和隐藏 在JavaScript中,监听页面的显示和隐藏可以通过监听visibilitychange事件来实现。visibilitychange事件会在页面的可见性发生变化时触发。 以下是一个简单的示例,演示如何使用visibilitychan…

《面向对象程序设计及C++》实验报告

《面向对象程序设计及C》实验报告 一、实验目的与实验要求 (1)掌握类的定义、类中成员函数的定义和使用、构造函数和析构函数的定义、功能;掌握对象的使用方法。 (2)掌握静态数据成员、静态成员函数的功能和使用方法…

Linux —— 信号初识

Linux —— 信号初识 什么是信号测试几个信号signal函数函数原型参数说明返回值注意事项示例 后台程序前台转后台检测输入中断向量表 我们今天来继续学习Linux的内容,今天我们要了解的是Linux操作系统中的信号: 什么是信号 信号是操作系统内核与进程之…

判断dll/lib是32/64位、查看lib是导入库/静态库的方法 、查看dll包含的符合、lib包含的函数

一、判断dll/lib是32/64位 原文链接:https://www.cnblogs.com/bandaoyu/p/16752602.html 1. 简便方法: 直接用记事本或者notepad(或txt文本)打开exe文件(dll文件),会有很多乱码,不要头疼,接下…

Vitis HLS 学习笔记--Schedule Viewer 调度查看器

目录 1. 简介 2. Schedule Viewer详解 2.1 视图说明 2.1.1 Operation\Control Step 2.1.2 周期关系图 2.1.3 Schedule Viewer 菜单栏 2.1.4 属性视图 2.2 内容说明 2.2.1 实参(b)解释 2.2.2 实参(a)解释 2.2.3 变量&am…

Windows如何安装hadoop

Hadoop是一个开源的分布式计算平台,旨在处理大规模数据的存储和处理。它提供了分布式文件系统(HDFS)和分布式计算框架(MapReduce),使得用户能够在大规模集群上存储和处理数据。Hadoop最初由Apache软件基金会…

cmake进阶:定义函数的使用方法

一. 简介 前面已经将 cmake 中常用的命令 command、变量 variable 都给大家进行了详细介绍,通过前面的学习,相信大家已经掌握了 cmake 工具的基本使用方法; 接下来我们再进一步学习 cmake,本文开始学习 cmake中定义函数。 二. …

TypeScript学习日志-第十九天(namespace命名空间)

namespace命名空间 一、基本用法 namespace 所有的变量以及方法必须要导出才能访问,如图: 二、 嵌套 namespace 可以进行嵌套使用,如图: 它也必须需要导出才能访问 三、合并 当我们出现两个同名的 namespace 它就会合并这两…

EFDC模型安装及建模方法;在排污口论证、水质模拟、地表水环评、地表水水源地划分、水环境容量计算等领域中的应用

目录 专题一 EFDC软件安装 专题二 EFDC模型讲解 专题三 一维河流模拟实操 专题四 建模前处理 专题五 EFDC网格剖分介绍 专题六 EFDC二维湖库水动力模拟/非保守染色剂模拟 专题七 EFDC水质模型参数及原理介绍 专题八 EFDC一、二、三维湖库水质模拟 专题九 基于EFDC的地…

nodejs的ws+vue3编写聊天室的demo

nodejs编写ws服务是非常简单高效的,nodejs有众多的实现ws的库,如ws,SocketIO等,nodejs的事件线程是单线程的,所以不要在事件线程内做阻塞性的操作,耗时的操作交给工作线程或者子进程操作。 我使用nodejsvue3实现了写了…

408数据结构-二叉树的遍历 自学知识点整理

前置知识:二叉树的概念、性质与存储结构 二叉树的遍历 二叉树的遍历是指按某条搜索路径访问树中每个结点,使得每个结点均被访问一次,而且仅被访问一次。 二叉树的递归特性: ①要么是棵空二叉树; ②要么就是由“根节点左子树右子树…

【NOI】C++程序结构入门之分支结构二

文章目录 前言一、逻辑运算符1.导入2.逻辑与(&&)3.逻辑或(||)4.逻辑非(!) 二、例题讲解问题:1656. 是两位的偶数吗问题:1658. 游乐设施问题:1659. 是否含有数字5…