python基础----02-----字面量、变量、数据类型及其转换、标识符以及字符串、数据输入(input语句)

2023-11-16

一 字面量

1 字面量

  • 字面量:在代码中,被写下来的的固定的值称之为字面量。类似C/C++的字符串常量。

1.1 常见的python值类型

Python中常见的值类型:
在这里插入图片描述
实际上在C/C++字面量和这里的类型还是有区别的,体现在内存存储中,字面量存储在代码区Text的只读存储区,而基本数据类型存储在栈上面。see C/C++2019秋招面试题集合05

1.2 字符串

  • 字符串(string) ,又称文本,是由任意数量的字符如中文、英文、各类符号、数字等组成。所以叫做字符的串。

Python中,字符串需要用双引号(“xxx”)包围起来。

if __name__ == '__main__':
    a = 666
    b = 3.14
    c = "零基础,学Python"
    print(a)
    print(b)
    print(c)
    print(666)   #同样也是字面量
    print(3.14)  #同样也是字面量
    print("零基础,学Python, 月薪过万,就来黑马程序员。")  #同样也是字面量

1.3 字面量总结

在这里插入图片描述

二 注释

2.1 注释的分类

  1. 单行注释:以#开头,#右边的所有文字当作说明,而不是真正要执行的程序,起辅助说明作用。
if __name__ == '__main__':
    # 我是一个单行注释
  1. 多行注释:以一对三个单双引号引起来(’ ’ ‘注释内容’ ’ ’ )(" " " 注释内容" " ")来解释说明一段代码的作用使用方法。
if __name__ == '__main__':
    '''
    我
    是
    多
    行
    注
    释
    '''
#或者
    """
    我
    是
    多
    行
    注
    释
    """

注释是代码中的解释型语句,用来对代码内容进行注解。注释不是代码,不会被程序执行。

三 变量

变量:在程序运行时,能储存计算结果或能表示值的抽象概念。简单的说,变量就是在程序运行时,记录数据用的。

在这里插入图片描述

if __name__ == '__main__':
    a = 666
    print("钱包还有:",a,"元")

四 数据类型

在学习字面量的时候,我们了解到:数据是有类型的。

目前在入门阶段,我们主要接触如下三类数据类型:
在这里插入图片描述

如何查看验证数据类型?
答案是使用type()函数,通过type()的返回值我们可以知道变量的数据类型。

if __name__ == '__main__':
    a = 666
    b = type(a)
    print(type(666))
    print(type(a))
    print(b)
    print(type("a"))
    '''
    输出:
	<class 'int'>
	<class 'int'>
	<class 'int'>
	<class 'str'>
    '''

变量有类型吗?我们通过type(变量)可以输出类型,这是查看变量的类型还是数据的类型?

查看的是:变量存储的数据的类型。因为,变量无类型,但是它存储的数据有。
在这里插入图片描述
在这里插入图片描述

五 数据类型转换

数据类型之间,在特定的场景下,是可以相互转换的,如字符串转数字、数字转字符串等。那么,我们为什么要转换它们呢?

从文件中读取的数字,默认是字符串,我们需要转换成数字类型,后续学习的input()语句,默认结果是字符串,若需要数字也需要转换,将数字转换成字符串用以写出到外部系统等等。

if __name__ == '__main__':
    a = 666
    b = "666"
    c = 66.6

    print(type(a))
    print(type(b))
    print(type(c))
    b = int(b)
    a = float(a)
    d = str(a)
    print(type(b))
    print(type(a))
    print(type(d))
    """
    <class 'int'>
	<class 'str'>
	<class 'float'>
	<class 'int'>
	<class 'float'>
	<class 'str'>
	"""

想把字符串转换成数字,必须确保字符串里都是数字,否则会报异常,例如mynum = int(“你好”)会报异常。
在这里插入图片描述

六 标识符

6.1 什么是标识符?

在Python程序中,我们可以给很多东西起名字,比如:

  1. 变量的名字。
  2. 方法的名字。
  3. 类的名字。
  4. 等等。

这些名字,我们把它统一的称之为标识符,用来做内容的标识。所以标识符作用:是用户在编程的时候所使用的一系列名字,用于给变量、类、方法等命名。

6.2 标识符命名规则

  1. 组成部分:英文,中文(不推荐),数字(不可以用在开头),下划线(_)。
  2. 大小写敏感。
  3. 不可使用关键字。

python常见关键字。
在这里插入图片描述

七 运算符

7.1 算术(数学)运算符

在这里插入图片描述

if __name__ == '__main__':
    # 算术(数学)运算符
    print("1 + 1 = ",1 + 1)    #2
    print("2 - 1 = ",2 - 1)    #1
    print("3 * 3 = ",3 * 3)    #9
    print("11/ 2 = ",11 / 2)   #5.5
    print("11//2 = ",11 // 2)  #5
    print("9 % 2 = ",9 % 2)    #1
    print("2** 3 = ",2 **3)    #8

7.2 赋值运算符

在这里插入图片描述

7.3 复合赋值运算符

在这里插入图片描述

if __name__ == '__main__':
    # 复合赋值运算符
    a = 11
    a +=1
    print("a += 1 : ", a)    #12
    a -=1
    print("a -= 1 : ",a)    #11
    a *= 2
    print("a *= 2 : ",a)    #22
    a /= 2
    print("a /= 2 : ",a)    #11.0
    a **= 2
    print("a **= 2 : ",a)    #121.0
    a //= 2
    print("a //= 2 : ",a)    #60.0
    a %= 3.3
    print("a %= 3.3 : ",a)    #0.6000000000000032

在这里插入图片描述

八 字符串三种定义方式

8.1 字符串三种定义方式

三引号定义法,和多行注释的写法一样,同样支持换行操作。
使用变量接收它,它就是字符串,不使用变量接收它,就可以作为多行注释使用。
在这里插入图片描述

8.2 字符串的引号嵌套

  1. 单引号定义法,可以内含双引号。
  2. 双引号定义法,可以内含单引号。
  3. 可以使用转移字符()来将引号解除效用,变成普通字符串。

在这里插入图片描述

if __name__ == '__main__':
    a = "'你好'"
    b = '"你好"'
    c = "\'你好\'"
    d = '\"你好\"'
    print(a)
    print(b)
    print(c)
    print(d)

在这里插入图片描述

九 字符串的拼接

如果我们有两个字符串(文本)字面量,可以将其拼接成一一个字符串,通过+号即可完成,如:

if __name__ == '__main__':
    print("你好"+ "世界")
    a = "你好"
    print(a+ "世界")

在这里插入图片描述

十 字符串格式化

我们可以通过以下语法,完成字符串和变量的快速拼接,实际上是利用是字符串的格式化。
语法:

变量 = "xxx %s" % 变量

%s:%表示我要占位,s表示要放的内容是字符串。所以%s表示我后续将一个变量的内容放到%s占位符的位置。

例如:

name = "张三"
student1 = "我的名字叫 %s, 来自广东" % name
print(student1)

在这里插入图片描述

常见占位符:
在这里插入图片描述

十一 字符串格式化的精度控制

我们可以用 m.n 来控制数据的宽度与精度。

  1. m,控制宽度,要求是数字(很少使用),设置的宽度小于数字自身,不生效。
  2. n,控制小数点精度,要求是数字,会进行小数的四舍五入。
if __name__ == '__main__':
    num1 = 11
    num2 = 11.345
    print("数字11宽度限制5,结果:%5d" % num1)
    print("数字11宽度限制1,结果:%1d" % num1)
    print("数字11.345宽度限制7,小数精度2,结果:%7.2f" % num2)
    print("数字11.345不限制宽度,小数精度2,结果:%.2f" % num2)
    """
    数字11宽度限制5,结果:   11
    数字11宽度限制1,结果:11
    数字11.345宽度限制7,小数精度2,结果:  11.35
    数字11.345不限制宽度,小数精度2,结果:11.35
    """

十二 字符串格式化的方式2

通过语法: f"内容{变量}"的格式来快速格式化。这种方式不理会类型,也不做精度控制,会原样输出。

f 的作用就是告诉电脑,我这里面会有占位符。

if __name__ == '__main__':
    num1 = 11
    num2 = 11.345
    print(f"结果: {num1},结果: {num2}")
    

在这里插入图片描述

在这里插入图片描述

十三 对表达式进行格式化

表达式:一条具有明确执行结果的代码语句。

if __name__ == '__main__':
    print("1 * 1的结果是: %d" % (1 * 1))
    print(f"1 * 2的结果是: {1*2}")
    print("字符串在Python中的类型名是: %s" % type("字符串"))

    '''
    1 * 1的结果是: 1
    1 * 2的结果是: 2
    字符串在Python中的类型名是: <class 'str'>
    '''

在这里插入图片描述

十四 字符串格式化练习题讲解

在这里插入图片描述

if __name__ == '__main__':
    name = "传智播客"
    stock_price = 19.99
    stock_code = "003032"
    stock_price_growth_factor = 1.2
    grow_days = 7
    finally_stock_price = stock_price*stock_price_growth_factor**grow_days
    print(f"公司: {name}, 股票代码: {stock_code}, 当前股价: {stock_price}")
    print("每日增长系数: %2.1f,经过%d天的增长后,股价达到了: %.2f" % (stock_price_growth_factor, grow_days, finally_stock_price))

    '''
    公司: 传智播客, 股票代码: 003032, 当前股价: 19.99
	每日增长系数: 1.2,经过7天的增长后,股价达到了: 71.63
    '''

在这里插入图片描述

十五 数据输入(input语句)

获取键盘输入——利用input语句完成。

我们前面学习过print语句(函数),可以完成将内容(字面量、变量等)输出到屏幕上。
在Python中,与之对应的还有一个input语句,用来获取键盘输入。

if __name__ == '__main__':
    # 1.
    print("please tell me your name!")
    name = input()
    print("ok,your name is " + name)
    # 2. 等价于方式1
    name = input("please tell me your name!")
    print("ok,your name is " + name)
    # 3.
    age = input("please tell me your age!")
    print("ok,your age is " + age)
    print("type: ", type(age))

依次输入:张三,李四,18,中间各自按下enter键后,得到如下结果:
在这里插入图片描述

在这里插入图片描述

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

python基础----02-----字面量、变量、数据类型及其转换、标识符以及字符串、数据输入(input语句) 的相关文章

  • 使用Python开发Web应用程序

    我一直在用 python 做一些工作 但这都是针对独立应用程序的 我很想知道 python 的任何分支是否支持 Web 开发 有人还会建议一个好的教程或网站吗 我可以从中学习一些使用 python 进行 Web 开发的基础知识 既然大家都说
  • Python BigQuery 存储。并行读取多个流

    我有以下玩具代码 import pandas as pd from google cloud import bigquery storage v1beta1 import os import google auth os environ G
  • 如何在刻度标签和轴之间添加空间

    我已成功增加刻度标签的字体 但现在它们距离轴太近了 我想在刻度标签和轴之间添加一点呼吸空间 如果您不想全局更改间距 通过编辑 rcParams 并且想要更简洁的方法 请尝试以下操作 ax tick params axis both whic
  • Python PAM 模块的安全问题?

    我有兴趣编写一个 PAM 模块 该模块将利用流行的 Unix 登录身份验证机制 我过去的大部分编程经验都是使用 Python 进行的 并且我正在交互的系统已经有一个 Python API 我用谷歌搜索发现pam python http pa
  • 使用 openCV 对图像中的子图像进行通用检测

    免责声明 我是计算机视觉菜鸟 我看过很多关于如何在较大图像中查找特定子图像的堆栈溢出帖子 我的用例有点不同 因为我不希望它是具体的 而且我不确定如何做到这一点 如果可能的话 但我感觉应该如此 我有大量图像数据集 有时 其中一些图像是数据集的
  • 如何生成给定范围内的回文数列表?

    假设范围是 1 X 120 这是我尝试过的 gt gt gt def isPalindrome s check if a number is a Palindrome s str s return s s 1 gt gt gt def ge
  • 导入错误:没有名为 _ssl 的模块

    带 Python 2 7 的 Ubuntu Maverick 我不知道如何解决以下导入错误 gt gt gt import ssl Traceback most recent call last File
  • 如何打印没有类型的defaultdict变量?

    在下面的代码中 from collections import defaultdict confusion proba dict defaultdict float for i in xrange 10 confusion proba di
  • 如何在Windows上模拟socket.socketpair

    标准Python函数套接字 套接字对 https docs python org 3 library socket html socket socketpair不幸的是 它在 Windows 上不可用 从 Python 3 4 1 开始 我
  • 运行多个 scrapy 蜘蛛的正确方法

    我只是尝试使用在同一进程中运行多个蜘蛛新的 scrapy 文档 http doc scrapy org en 1 0 topics practices html但我得到 AttributeError CrawlerProcess objec
  • 从列表中的数据框列中搜索部分字符串匹配 - Pandas - Python

    我有一个清单 things A1 B2 C3 我有一个 pandas 数据框 其中有一列包含用分号分隔的值 某些行将包含与上面列表中的一项的匹配 它不会是完美的匹配 因为它在其中包含字符串的其他部分 该列 例如 该列中的一行可能有 哇 这里
  • 在 NumPy 中获取 ndarray 的索引和值

    我有一个 ndarrayA任意维数N 我想创建一个数组B元组 数组或列表 其中第一个N每个元组中的元素是索引 最后一个元素是该索引的值A 例如 A array 1 2 3 4 5 6 Then B 0 0 1 0 1 2 0 2 3 1 0
  • python pandas 中的双端队列

    我正在使用Python的deque 实现一个简单的循环缓冲区 from collections import deque import numpy as np test sequence np array range 100 2 resha
  • Numpy 优化

    我有一个根据条件分配值的函数 我的数据集大小通常在 30 50k 范围内 我不确定这是否是使用 numpy 的正确方法 但是当数字超过 5k 时 它会变得非常慢 有没有更好的方法让它更快 import numpy as np N 5000
  • Python 3 中“map”类型的对象没有 len()

    我在使用 Python 3 时遇到问题 我得到了 Python 2 7 代码 目前我正在尝试更新它 我收到错误 类型错误 map 类型的对象没有 len 在这部分 str len seed candidates 在我像这样初始化它之前 se
  • 从 pygame 获取 numpy 数组

    我想通过 python 访问我的网络摄像头 不幸的是 由于网络摄像头的原因 openCV 无法工作 Pygame camera 使用以下代码就像魅力一样 from pygame import camera display camera in
  • 从 Python 中的类元信息对 __init__ 函数进行类型提示

    我想做的是复制什么SQLAlchemy确实 以其DeclarativeMeta班级 有了这段代码 from sqlalchemy import Column Integer String from sqlalchemy ext declar
  • 在python中,如何仅搜索所选子字符串之前的一个单词

    给定文本文件中的长行列表 我只想返回紧邻其前面的子字符串 例如单词狗 描述狗的单词 例如 假设有这些行包含狗 hotdog big dog is dogged dog spy with my dog brown dogs 在这种情况下 期望
  • 循环标记时出现“ValueError:无法识别的标记样式 -d”

    我正在尝试编码pyplot允许不同标记样式的绘图 这些图是循环生成的 标记是从列表中选取的 为了演示目的 我还提供了一个颜色列表 版本是Python 2 7 9 IPython 3 0 0 matplotlib 1 4 3 这是一个简单的代
  • 使用基于正则表达式的部分匹配来选择 Pandas 数据帧的子数据帧

    我有一个 Pandas 数据框 它有两列 一列 进程参数 列 包含字符串 另一列 值 列 包含相应的浮点值 我需要过滤出部分匹配列 过程参数 中的一组键的子数据帧 并提取与这些键匹配的数据帧的两列 df pd DataFrame Proce

随机推荐

  • 【译】12 条你可能还不知道的 Rust 提示和技巧

    12 Rust Tips and Tricks you might not know yet 译文 12 条你可能还不知道的 Rust 提示和技巧 原文链接 https federicoterzi com blog 12 rust tips
  • idea 中使用dataBase插件

    欢迎关注微信公众号 程序员小圈圈 转载请标明出处 原文首发于 www zhangruibin com 本文出自于 RebornChang的博客 idea对诸多数据库插件提供支持 举例MySQL数据库 使用idea中数据库插件首先把数据库da
  • leetcode 21. 合并两个有序链表 (python)

    将两个有序链表合并为一个新的有序链表并返回 新链表是通过拼接给定的两个链表的所有节点组成的 例 输入 1 gt 2 gt 4 1 gt 3 gt 4 输出 1 gt 1 gt 2 gt 3 gt 4 gt 4 本题同样可以很单线条解决 代码
  • 使用 windows 批处理指令(BAT文件)进行压缩文件(zip)解压操作

    以下指令包括文件删除 复制 zip文件解压操作 使用7z指令指令进行解压操作前 需要确保 windows 的 path 系统环境变量中存在7z的安装路径 7z的下载地址 https www 7 zip org download html 替
  • 【资源下载】Linux中下载并安装gdb调试器(附下载链接)

    资源下载 Linux中下载并安装gdb调试器 附下载链接 gdb是Linux环境下的代码调试工具 为了能在linux环境下更有好的编程体验 接下来我来教大家怎么安装 文章目录 资源下载 Linux中下载并安装gdb调试器 附下载链接 1 先
  • 无人车沿着指定线路自动驾驶与远程控制的实践应用

    有了前面颜色识别跟踪的基础之后 我们就可以设定颜色路径 让无人车沿着指定线路做自动驾驶了 视频 PID控制无人车自动驾驶 有了前几章的知识铺垫 就比较简单了 也是属于颜色识别的一种应用 主要是掌握自动驾驶中的一些基础知识 这样就可以进一步去
  • 第二讲 MySQL体系结构与存储引擎

    1 MySQL体系结构 1 1 数据库与数据库实例 数据库 物理操作系统中的文件和其他文件类型的集合 除了硬盘存储的文件 也可以是存放在内存中的文件 数据库实例 有数据库后台进程 线程以及一个共享内存区域组成 共享内存可以被后台进程 线程所
  • 【数据结构期末例题】

    前言 本文是博主自己在准备学校数据结构考试时的总结 各个知识点都贴有对应的详细讲解文章以供大家参考 当然文中还有许许多多的截图 这些是博主对主要内容的摘取 对于那些基础较好的同学可以直接看截图 减少跳转对应文章浏览全文的时间 感谢本文引用文
  • 弹性盒子(display: flex)布局超全讲解

    文章目录 什么是弹性布局 弹性布局的特点 容器的属性 justify content align items flex direction flex wrap flex flow align content order属性 flex gro
  • QT笔记-Label控件显示图片

    1 Label控件动态显示图片 动态显示图片1 int DeviceEdit OnLensPic bool checked AfCd cd QImage img img load UI lens bmp QImage imgScaled i
  • EduCoder_web实训作业--页面结点元素

    第一关 B C D A B 第二关 section section
  • LeetCode从零开始——第一题

    1 两数之和 题目描述 解题思路 代码执行 题目描述 给定一个整数数组 nums 和一个目标值 target 请你在该数组中找出和为目标值的那 两个 整数 并返回他们的数组下标 你可以假设每种输入只会对应一个答案 但是 数组中同一个元素不能
  • WPF图表Live Charts(四)动态折线图

    简介 前面介绍了Live Charts的基础和设置 接下将介绍如何绘制动态的折线图 实时更新数据的折线图 效果预览 前台代码
  • 容器常用函数、algorithm头文件

    偶然发现有个
  • C++ 大话设计之《代理模式》(优缺点,设计原理,常用场景)

    代理模式是一种结构型模式 优点 可以实现对原对象的访问控制 代理对象可以在访问原对象之前执行一些额外操作 例如检查权限 记录日志等 可以提供额外的功能 代理对象可以在不修改原对象的情况下 为原对象提供额外的功能 可以减少客户端代码的复杂性
  • 【QT基础入门】1、QT开发环境搭建

    文章目录 一 学习所需要的软件 二 安装 VS2012 三 win10 下安装 QT 一 学习所需要的软件 Visual Studio 2012 Qt SDK 4 7 4 Qt Creator 2 4 1 Visutal Studio 20
  • 2021-10-26尤破金10.27外汇黄金白银实时操作策略布局

    黄金行情走势分析 周二 10月26日 国际金价回落 受到美元上扬打压 投资者在本周的关键央行政策会议前评估各国央行对日益增长的通胀压力可能做出的反应 分析师说 在当前的通胀环境下 黄金应能维持相对良好的支撑 直到我们得到美联储明确的鹰派转向
  • 2017总结

    这一年还是大部分时间做着开发的工作 在创业的一年多时间里 好像自己所做的事情不太像一个创业者做的事 用了太多的时间在具体的工作当中了 对于市场 对于营销推广都是在被动的接收 没有全面的 主动的去做事情 这也可能是我们做技术的出来创业的弊端
  • Vue.js 中hash路由和history路由原理及优缺点

    Vue js 中hash路由和history路由原理及优缺点 hash模式 原理 在 url 中的 之后对应的是 hash 值 其原理是通过hashChange 事件监听hash值的变化 根据路由表对应的hash值来判断加载对应的路由加载对
  • python基础----02-----字面量、变量、数据类型及其转换、标识符以及字符串、数据输入(input语句)

    一 字面量 1 字面量 字面量 在代码中 被写下来的的固定的值称之为字面量 类似C C 的字符串常量 1 1 常见的python值类型 Python中常见的值类型 实际上在C C 字面量和这里的类型还是有区别的 体现在内存存储中 字面量存储