当前位置:

首页 > 编程开发 > 分析Python数据类型的实例代码入门。

分析Python数据类型的实例代码入门。

变量变量存储值。在python中,这些是变量命名约定:变量应以字母(最好是小写)或下划线开头,后面可以跟数字或下划线Snakecase是变量的常规写法如user_name,单词间用下划线隔开(Javascript推荐驼峰命名,比如:userName)它们区分大小写不能直接命名关键词变量(查看官方文档《Python关键字》)那么如果,真的犯了这个错,会怎么样呢?举个例子:>>>if=1SyntaxError:invalidsyntax>>>print(and)SyntaxError:invalidsynta

本文目录

    变量

    变量存储值。在 python 中,这些是变量命名约定:

    • 变量应以字母(最好是小写)或下划线开头,后面可以跟数字或下划线

    • Snake case是变量的常规写法如user_name,单词间用下划线隔开(Javascript推荐驼峰命名,比如:userName)

    • 它们区分大小写

    • 不能直接命名关键词变量(查看官方文档《Python 关键字》)

    分析Python数据类型的实例代码入门。

    那么如果,真的犯了这个错,会怎么样呢?举个例子:

    >>> if = 1
    SyntaxError: invalid syntax
    >>> print(and)
    SyntaxError: invalid syntax
    >>> def = "hi"
    SyntaxError: invalid syntax

    看到没有?直接提示语法错误。

    除了不能使用关键字作为标识符,前面我们也强调过了,也不能使用内置函数同名的标识符。Python有很多内置函数,以sum为例,这是一个求和的函数,我们看一下错误的命名导致的后果:

    >>> sum([1,2,3,4])
    10
    >>> sum = "错误标识符名"
    >>> sum([1,2,3,4])
    Traceback (most recent call last):
      File "", line 1, in 
        sum([1,2,3,4])
    TypeError: 'str' object is not callable

    先不管sum([1,2,3,4])的意义,它的作用是把1/2/3/4加在一起得到10,然后错误的给一个变量也取了个sum的标识符名称,再后面又调用sum([1,2,3,4])的时候,程序抛出异常,错误原因是str不是可调用的类型。归根到底就是sum这个名字重名了的原因。

    数据类型

    简单来说,数据类型是一种表示值的方式。在我们的现实世界中,我们将字母、数字、符号作为不同类型的常用值。同样,Python 包含以下基本数据类型:

    • int(整数)

    • float(浮点数)

    • str(字符串)

    • bool(布尔值)

    • list(列表)

    • tuple(元祖)

    • set(集合)

    • dict(字典)

    • complex(复数)

    • None(空值)

    这些是 Python 中可用的标准数据类型。要创建我们自己的自定义类型,需要使用类。也可以通过导入外部库或模块来使用专门的数据类型。

    相反,在 JavaScript 中,有以下可用的原始类型:

    • number (数字:整数和小数)

    • string(字符串)

    • boolean(布尔值)

    • symbol(符号:唯一、不可变)

    • bigInt(大整数)

    • null(空值)

    • undefined(对象也是非原始类型)

    今天我只是花时间整理 Python 的数字和字符串类型。

    数字

    有 3 种数字数据类型:

    • int(存储无限大小的整数)

    • float(存储浮点实数值)

    • complex(我现在只是跳过它,因为我了解到它不常用,类似于 JavaScript 中的 bigInt)。

    相比之下,JavaScript 有两种数值数据类型,Number和BigInt。
    type函数用于确定值或表达式的类型。(类似于 JavaScript中的typeof运算符)

    num = 100 # variable assignement
        print(type(num)) # 
    
        num2 = 99.99
        print(type(num2)) # 
    
        expression1 = num * 10
        print(type(expression1)) # 
    
        expression2 = num + num2
        print(type(expression2)) # 

    在 Python 中,变量赋值是通过编写名称并使用=运算符赋值来实现的。
    在 JavaScript 中,变量名需要以var,const或let关键字开头。

    数学计算

    对于数学计算,除了前面提到过的简单的加减乘除等等,更多的科学计算需要导入math这个库,它包含了绝大多数我们可能需要的科学计算函数,如下表。有一些内置的数学函数可以让我们轻松计算各种数学运算。

    函数

    返回值 ( 描述 )

    abs(x)

    返回数字的绝对值,如abs(-10) 返回 10

    ceil(x)

    返回数字的上入整数,如math.ceil(4.1) 返回 5

    exp(x)

    返回e的x次幂(ex),如math.exp(1) 返回2.718281828459045

    fabs(x)

    返回数字的绝对值,如math.fabs(-10) 返回10.0

    floor(x)

    返回数字的下舍整数,如math.floor(4.9)返回 4

    log(x)

    如math.log(math.e)返回1.0,math.log(100,10)返回2.0

    log10(x)

    返回以10为基数的x的对数,如math.log10(100)返回 2.0

    max(x1, x2,...)

    返回给定参数的最大值,参数可以为序列。

    min(x1, x2,...)

    返回给定参数的最小值,参数可以为序列。

    modf(x)

    返回x的整数部分与小数部分,两部分的数值符号与x相同,整数部分以浮点型表示。

    pow(x, y)

    x**y 运算后的值。

    round(x [,n])

    返回浮点数x的四舍五入值,如给出n值,则代表舍入到小数点后的位数。

    sqrt(x)

    返回数字x的平方根

    acos(x)

    返回x的反余弦弧度值。

    asin(x)

    返回x的反正弦弧度值。

    atan(x)

    返回x的反正切弧度值。

    atan2(y, x)

    返回给定的 X 及 Y 坐标值的反正切值。

    cos(x)

    返回x的弧度的余弦值。

    hypot(x, y)

    返回欧几里德范数 sqrt(xx + yy)

    sin(x)

    返回的x弧度的正弦值。

    tan(x)

    返回x弧度的正切值。

    degrees(x)

    将弧度转换为角度,如degrees(math.pi/2) , 返回90.0

    radians(x)

    将角度转换为弧度

    print(round(2.1)) # 2
        print(round(5.9)) # 6
        print(abs(-34)) # 34

    以及两个数学常量:

    常量

    描述

    pi

    数学常量 pi(圆周率,一般以π来表示)

    e

    数学常量 e,e即自然常数(自然常数)。

    下面是一些应用展示,注意最后的角度调用方式:

    >>> math.log(2)
    0.6931471805599453
    >>> math.cos(30)
    0.15425144988758405
    >>> math.cos(60)
    -0.9524129804151563
    >>> math.sin(30)
    -0.9880316240928618
    >>> math.sin(math.degrees(30))
    -0.4097717985741408
    >>> math.sin(math.radians(30))
    0.49999999999999994

    字符串

    字符串是Python中最常用的数据类型之一,使用单引号或双引号来创建字符串,使用三引号创建多行字符串。字符串要么使用两个单引号,要么两个双引号,不能一单一双!Python不支持单字符类型,单字符在Python中也是作为一个字符串使用。

    字符串是不可变的序列数据类型,不能直接修改字符串本身,和数字类型一样!Python3全面支持Unicode编码,所有的字符串都是Unicode字符串,所以传统Python2存在的编码问题不再困扰我们,可以放心大胆的使用中文。

    name = 'Python' # string assignment within single quotes
        name2 = "Python" # string assingment within double quotes
        name3 = '''This is a a very long string and supports 
                multiline statements as well''' # string assingment within 3 single quotes
        name4 = 'Hello! \"Rockstar Programmer\"' # string with escaped character sequence
        print(type(name)) # 
        print(type(name2)) # 
        print(type(name3)) # 
        print(type(name4)) # 
    >>> var1 = 'Hello World!'
    >>> var2 = "Jack"
    >>> var3 = ""                   # 空字符串
    >>> var4 = "it's apple"         # 双引号中可以嵌套单引号
    >>> var5 = 'This is "PLANE"!'   # 单引号中可以嵌套双引号
    >>> var6 = 'what is 'your'name'
    SyntaxError: invalid syntax

    但是单引号嵌套单引号或者双引号嵌套双引号就会出现歧义。

    >>> a = "haha"
    >>> b = a
    >>> a = "xixi"
    >>> a is b
    False
    >>> a[1] = "z"
    Traceback (most recent call last):
      File "", line 1, in 
        a[1] = "z"
    TypeError: 'str' object does not support item assignment

    虽然字符串本身不可变,但可以像列表序列一样,通过方括号加下标的方式,访问或者获取它的子串,当然也包括切片操作。这一切都不会修改字符串本身,当然也符合字符串不可变的原则。

    >>> s = "hello world!"
    >>> s[4]
    'o'
    >>> s[2:6]
    'llo '
    >>> s
    'hello world!'

    字符串连接

    与 Javascript 类似,可以使用+运算符连接字符串。它只是连接或“连接”字符串。

    first_name = 'Mike'
        last_name = 'Tyson'
        print(first_name + ' ' + last_name) # Mike Tyson

    类型转换

    与存在隐式类型转换(又名强制类型转换)的 Javascript 不同,如果使用不同类型执行操作,Python 将抛出错误:

    user_name = 'John'
        age = 40
        print(user_name + age) # TypeError: can only concatenate str (not "int") to str
        # This would work in Javscript where it would convert the result to string type

    在 Python 中,需要显式转换类型才能执行不同类型的操作:

    user_name = 'John'
        age = 40
        print(user_name + str(age)) # John40
        print(type str(age)) # 

    同样,字符串也可以转换为数字:

    lucky_number = 7
        lucky_number_stringified = str(7)
        lucky_number_extracted = int(lucky_number_stringified)
        print(lucky_number_extracted) # 7
    本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系bd@zhengruan.com
    作者最新文章
    编程开发 Python
    相关文章 更多
    python删除一个列表里的重复元素的方法与代码示例
    python删除一个列表里的重复元素的方法与代码示例

    学习如何使用Python高效删除列表中的重复元素。本文提供5种常见方法的代码示例,涵盖保持顺序与不保持顺序的场景,适合初学者和进阶开发者参考。

    Python写接口的步骤及完整代码示例
    Python写接口的步骤及完整代码示例

    详细讲解使用Python编写Web接口的核心步骤与完整代码示例,涵盖环境准备、路由定义、数据校验、服务启动及调试测试方法。

    codex怎么读取word文档及docx文件操作教程
    codex怎么读取word文档及docx文件操作教程

    介绍如何利用编程工具读取和解析Word文档(docx格式),涵盖基础文本提取代码示例、结构化数据处理逻辑,以及处理复杂排版时的技术局限与替代方案。

    怎么在Python中调用C语言代码提升性能
    怎么在Python中调用C语言代码提升性能

    详细讲解在Python中调用C语言代码提升性能的完整实践指南,包含原理分析、编译步骤、ctypes与CFFI具体实现、性能对比及常见陷阱。

    Python与C语言的性能差异及底层原理
    Python与C语言的性能差异及底层原理

    深入解析Python与C语言在执行效率上的数量级差异,从编译机制、变量内存布局、动态类型推断到GIL锁,系统阐明底层核心原理。

    Python和C语言哪个更适合编程入门
    Python和C语言哪个更适合编程入门

    客观对比Python与C语言在心智负担、底层机制与学习反馈上的核心差异,提供清晰有据的选择标准与切实的入门学习路径。

    selenium上传文件教程本地文件路径设置方法
    selenium上传文件教程本地文件路径设置方法

    深入解析Selenium处理文件上传的技术细节,涵盖标准HTML控件的路径直接注入法与非标准控件的系统级模拟方案,提供Windows与Linux环境下的路径设置最佳实践及常见异常排查。

    大数据开发语言选型:Java对比Scala与Python的优缺点及适用场景
    大数据开发语言选型:Java对比Scala与Python的优缺点及适用场景

    针对大数据工程场景,系统对比Java、Scala与Python在执行性能、生态结合、开发效率和维护成本上的核心差异,给出清晰的架构选型依据与落地方案。

    langgraph python guide中文入门教程详解
    langgraph python guide中文入门教程详解

    本篇LangGraph Python中文入门教程详解,系统梳理StateGraph状态机定义、节点编写、边与条件路由、检查点持久化(MemorySaver)等核心机制,提供从环境安装到完整循环智能体构建的代码示例与实操指导。

    Windows 安装 Python:从官方入口到虚拟环境的可复现实践
    Windows 安装 Python:从官方入口到虚拟环境的可复现实践

    面向后端开发者,基于 Python 官方文档说明如何在 Windows 上安装 Python、创建 venv 虚拟环境及使用 pip 管理依赖。包含可复制命令、验证方法及工具选择边界,避免常见配置误区。

    查看更多
    精品专题 更多
    装机必备
    装机必备

    正软商城装机必备专区,精选办公、浏览器、安全防护、影音播放、压缩解压、设计创作和系统工具等电脑常用正版软件,帮助用户快速完成新电脑软件配置。

    Windows
    Windows

    正软商城Windows软件专区,汇集适用于Windows电脑的办公、设计、安全防护、影音播放、开发工具和系统优化软件,提供软件介绍、系统要求、正版授权及购买下载服务。

    PDF教程
    PDF教程

    正软商城PDF教程频道提供PDF编辑、转换、合并、拆分、压缩及格式处理方法,同时介绍常用PDF软件和工具的使用技巧。

    Mac软件 更多
    讯飞智作 网页版
    讯飞智作 网页版
    Windows/ macOS/ Linux

    讯飞智作是一款基于语音合成技术、虚拟人驱动技术与数字人形象声音构建能力的 AI 数字人音视频创作平台。

    火山引擎 网页版
    火山引擎 网页版
    Windows/ macOS/ Linux

    火山引擎是字节跳动旗下企业级云与AI服务平台。聚焦大模型核心能力,依托字节自研豆包多模态大模型,凭借火山方舟一站式平台,提供模型精调、推理部署、智能应用搭建等全链路服务,结合高性能AI算力,助力各行业快速落地大模型数字化与智能化应用。

    Aperty macOS版
    Aperty macOS版
    macOS

    Aperty 是 Skylum 推出的 AI 人像修图软件,支持自然肤质修饰、瑕疵处理、面部与身体调整、预设及批量同步。

    WINDOWS 更多
    讯飞智作 网页版
    讯飞智作 网页版
    Windows/ macOS/ Linux

    讯飞智作是一款基于语音合成技术、虚拟人驱动技术与数字人形象声音构建能力的 AI 数字人音视频创作平台。

    火山引擎 网页版
    火山引擎 网页版
    Windows/ macOS/ Linux

    火山引擎是字节跳动旗下企业级云与AI服务平台。聚焦大模型核心能力,依托字节自研豆包多模态大模型,凭借火山方舟一站式平台,提供模型精调、推理部署、智能应用搭建等全链路服务,结合高性能AI算力,助力各行业快速落地大模型数字化与智能化应用。

    PixTV 网页版
    PixTV 网页版
    Windows

    PixTV 是一款在浏览器中使用的 AI 视觉内容创作平台,提供图片、视频、音频、文字生成、AI 分镜、局部重绘、提示词反推和无限画布等工具,适合短剧、漫剧、广告及社交媒体内容制作。