day3-02 python入门之基本的数据类型
目录
一、整型(int)
python2中有long类型
python3中没有long类型,只有int类型
整形,用来记录年龄,人数等整数相关的状态
age = 21
students = 65
print(type(age))
<class 'int'> # 类型为整型
二、浮点型(float)
用来记录工资,身高,体重等小数相关的状态
sal = 5257.23
weight = 60.78
height = 175.12
print(type(sal))
<class 'float'> # 类型为浮点型
三、字符串类型(str)
在引号内的都被称为字符串,用来描述事物的状态信息
name = 'kody'
address = '河南南阳'
sex = '男'
print(type(sex))
<class 'str'> # 类型为字符串
字符串引号是没有区别的,但不能混用
# 单双引号无区别,都是字符串引号
name = "kody"
name = 'kody'
name = """kody"""
# 但是单双引号不能混用
name = 'kody" # 错误示例
如果字符串中还需要引号,就必须嵌套
today = '你看起来很美,像一朵‘玫瑰’,让人心情也好起来了'
print(today)
你看起来很美,像一朵‘玫瑰’,让人心情也好起来了
字符串拼接是开辟一个新的内存空间,将你拼接之后的值存进去
s6 = 'hello'
s7 = 'world'
print(s6 + s7)
字符串在python2和python3中的细微区别
在python2中:
str的本质是8个bit的序列
>>> s1 = 'sean'
>>> type(s1)
<type 'str'>
>>> s1 = s1.decode("utf-8") # 将s1的sean字符串类型解码为utf-8
>>> type(s1) # 打印解码后的s1
<type 'unicode'> # 显示为unicode
>>> s1
u'sean'
当我们把s1的值解码后为unicode,那未解码前,s1的值应该为8个bit的序列
在python3中:
str的本质是unicode序列
>>> ss1 = 'sean'
>>> type(ss1)
<class 'str'>
>>>
>>> ss1 = ss1.encode('utf-8') # 把ss1的值编码为utf-8
>>> ss1
b'sean'
>>>
>>> type(ss1) # 打印ss1的类型
<class 'bytes'> # 为bytes
当我们把ss1的值编码后为bytes,那未编码前,ss1的值是unicode序列
1024G = 1T
1024M = 1G
1024KB = 1M
1024B = 1KB
1B = 8bit
四、复数
我们来明确一下什么是复数: 复数在数学上面的定义是由实数部分和虚数部分所组成的数,形如a+bj .
其中a、b为实数,j为“虚数单位”,j 的平方等于-1.a、b分别叫做复数a+bj的实部和虚部。
# 问题
关于 Python 的复数类型,以下选项中描述错误的是
A复数的虚数部分通过后缀“J”或者“j”来表示
B对于复数 z,可以用 z.real 获得它的实数部分
C对于复数 z,可以用 z.imag 获得它的实数部分
D复数类型表示数学中的复数
正确答案: C
# 下面让我们在Python中定义一个复数:real + imag(虚部的单位可以是j或者J)
a = 6 + 0.6j
# 输出这个复数a
print(a)
# 获取实部
print(a.real)
# 获取虚部
print(a.imag)
# 获取该复数的共轭复数
print(a.conjugate())
# 让我们通过complex函数来定义一个复数
a = complex(1, 2)
b = complex(1)
c = complex("1")
d = complex("1+2j")
# 运行结果
(1+2j)
(1+0j)
(1+0j)
(1+2j)
五、列表(list)
存在一个或者多个不同类型的值
# 假设我们想要取sean老师的其中一个技能“跳”,改如何取出?
sean = ['老男人', '60', ['唱', '跳', 'rap', '篮球']]
# 利用索引取值(索引计数是从0开始的)
print(sean[0]) # 首先我们取索引为0的发现对应的位置是--老男人
老男人
print(sean[1]) # 索引1的位置对应的是--60
60
print(sean[2]) # 索引2的位置对应的是一个列表
['唱', '跳', 'rap', '篮球']
# 那发散思考,sean老师的技能是在大列表中,索引位置为2的小列表里,因此
print(sean[2][1])
跳
l1 = [
['sean', '老男人', '60', ['唱', '跳', 'rap', '篮球']],
['egon', '抽烟', '喝酒']
]
print(l1[0][3][3])
篮球
六、数据字典(dict)
定义方式
通过大括号存储数据,通过key:value
这种映射关系定义键值对,每个键值对通过逗号进行分隔
# d = dict({'name': 'sean', 'age': '80})
d = {'name': 'sean', 'age': '80'}
print(d['name'])
sean
print(type(d))
<class 'dict'>
print(d['name'], d['age'])
sean 80
# 例如我想取出kody的兴趣爱好中的羽毛球
d1 = {'name': 'kody', 'age': '21', 'hobby': ['看书', '听歌', '羽毛球']}
print(d1['hobby'][2])
羽毛球
七、布尔值(bool)
定义
主要用于判断事物的对错
值相等的情况下,id不一定相等
id相等的情况下,值一定相等
a = True # a = bool(True)
b = False # a = bool(False)
a = 1
b = 2
print(a > b) # 比较大小
False # 返回结果,不正确
==和is
a = 1
b = 1
print(a == b) # 等号比较的是value
print(a is b) # is比较的是id(地址)
True
True
day3-02 python入门之基本的数据类型的更多相关文章
- python入门(8)数据类型和变量
python入门(8)数据类型和变量 数据类型 在Python中,能够直接处理的数据类型有以下几种: 整数 Python可以处理任意大小的整数,当然包括负整数,在程序中的表示方法和数学上的写法一模一样 ...
- Python入门 常量 注释 基础数据类型 用户输入 流程控制
Python入门 一.常量 在Python中,不像其他语言有绝对的常量,修改会报错,在Python中有个约定俗成的规定--常量就是将变量名大写. 尽量保持不更改的一种量 , 这个常量有是干什么的呢 其 ...
- Python入门一:基本数据类型
作为一个刚入门编程的大一狗,第一次写博客,希望能对自己学的知识进行巩固和提升,也希望记录自己成长的过程. 学习Python,一是因为暑假学的c++头疼,听说Python简单,那我就试试吧,二是因为Py ...
- Python入门(一)数据类型、循环语句
脚本语言类型: 1.编译型语言:写完代码不能执行,需要先编译 eg:c.c++.c# 2.解释性语言:不需要编译 直接执行 eg:python.jav ...
- Python入门必学:数据类型和变量的用法
什么是数据类型?计算机顾名思义就是可以做数学计算的机器,因此,计算机程序理所当然地可以处理各种数值.但是,计算机能处理的远不止数值,还可以处理文本.图形.音频.视频.网页等各种各样的数据,不同的数据, ...
- python入门到放弃-基本数据类型之tuple元组
#概述 元组俗称不可变的列表,又称只读列表,是python的基本数据类型之一, 用()小括号表示,里面使用,逗号隔开 元组里面可以放任何的数据类型的数据,查询可以,循环可以,但是就是不能修改 #先来看 ...
- python入门到放弃-基本数据类型之dcit字典
1.概述 字典是python中唯一的一个映射类型,以{}大括号括起来的键值对组成 字典中的key是唯一的,必须是可hash,不可变的数据类型 语法:{key1:value,key2:value} #扩 ...
- Python 入门基础2 --基本数据类型、运算符
本节目录 一.IDE(集成环境的安装) 二.基本数据类型 三.输入输出 四.运算符 五.后期补充内容 一.IDE(集成环境的安装) 安装pycharm 注:快捷键: 1.ctrl + ? :注释此行, ...
- python入门-变量和简单数据类型
1 title() 是以首字母大写的方式显示每个单词 lower() 字母小写 upper() 字母大写 2 python使用+号来合并字符串 字符串中使用制表符用\t 字符串中使用换行符\n 用rs ...
随机推荐
- .Net Core 跨平台:一个简单程序的多平台(windows、Linux、osx)发布
.Net Core 跨平台:一个简单程序的多平台(windows.Linux.osx)发布 .Net Core 3.0 已于2019年9月23日发布了,包含了一些新特性,具体参见Announcing ...
- Apache和Tomcat 配置负载均衡(mod-proxy方式)-粘性session
Tomcat集群配置后端Tomcat Server为支持AJP的独立服务,前端Apache配置为粘性会话(sticky-session),Tomcat不配置Cluster配置和Session复制. 配 ...
- linux 防火墙相关命令
1.系统命令systemctl start firewalld #启动 systemctl status firewalld #查看运行状态 systemctl stop firewalld #关闭 ...
- linux常用开发命令总结
linux常用命令 文件操作命令 1. cd 目录名/目录名 切换目录 cd .. 切换到上一级目录 (change dictionary) Ctrl+C强制退出命令行,回到上一级 2.ls ...
- 电脑链接WiFi有网络不能上网问题
刚刚入手了一个小米book pro笔记本突然发现网络链接了,但是却上不了网.找了n种方法,最后发现问题在于电脑的网络适配器中的无线模式出现了问题,下面开始解决方案的详细步骤说明. 一 . 打开电脑管理 ...
- 是男人就过八题A_A String Game题解
题意 给一个字符串\(s\),和\(n\)个子串\(t[i]\),两个人博弈,每次取出一个串\(t[i]\),在后面加入一个字符,保证新字符串仍然是\(s\)的子串,无法操作的人输. 分析 n个子串, ...
- MOV与LEA
MOV 格式:MOV dest, src 作用:赋值,且不改变标记位的值 特点:可以从寄存器到寄存器.从立即数到寄存器.从存储单元到寄存器.从立即数到储存单元.从寄存器到存储单元.从寄存器或存储单元到 ...
- Java8两大特性(一)——Stream
什么是Stream? Stream(流)是一个来自数据源的元素队列并且支持聚合操作,元素流在管道中经过中间操作,最终操作得到结果. 数据源:集合,数组,I/O channel,产生器generator ...
- 攻防世界(XCTF)WEB(进阶区)write up(三)
挑着做一些好玩的ctf题 FlatScience web2 unserialize3upload1wtf.sh-150ics-04web i-got-id-200 FlatScience 扫出来的lo ...
- 域渗透基础之Windows 2012创建域控制器
创建备份域控制器 这里就拿windows 2012 R2来当备份域控 如果一个域内有多个域控制器,可以有如下好处. 提高用户登录的效率:如果同时有多台域控制器对客户提供服务,可以分担审核用户登录身份( ...