2.2 Python3基础-基本数据类型
>>返回主目录



源代码
# 基本数据类型
# Number类型:如何查看变量的数据类型?
name = 'Portos'
print(type(name))  # 结果:str
print(isinstance(name, str))  # 结果:str
# 如何转换数据类型?
score = 99.5  # 浮点型转换成整型和字符型
score_int = int(score)
score_str = str(score)
# 字符串可以转换成数字类型么?反之呢?
# 纯字符串的数字可以转换成数字类型,反之,数字类型可以转换成字符串
# 数字类型间的运算
score_1 = 88.6
score_2 = 99.5
score_total = score_1 + score_2
print(score_total)  # 结果:188.1

源代码
# String类型
'''
字符串的截取的语法格式如下:
变量[头下标:尾下标:间隔值]
索引值以 0 为开始值,-1 为从末尾的开始位置
'''
str_1 = 'I Love Python'
print(str_1)           # 输出字符串
print(str_1[0:-1])     # 输出第一个到倒数第二个的所有字符
print(str_1[0])        # 输出字符串第一个字符
print(str_1[2:5])      # 输出从第三个开始到第五个的字符
print(str_1[2:])       # 输出从第三个开始的后的所有字符
print(str_1[-1])       # 输出最后一位
print(str_1[:])        # 输出全部字符串
print(str_1[::2])      # 每隔2个字符输出字符串
print(str_1[::-1])     # 倒序输出字符串
print(str_1 * 2)       # 输出字符串两次,也可以写成:print(2 * str_1)
print(str_1 + "TEST")  # 连接字符串

源代码
# 转义字符:\
# Python 使用反斜杠 \ 转义特殊字符,如果你不想让反斜杠发生转义,可以在字符串前面添加一个 r,表示原始字符串:如:
print('Pytho\n')   # 转义
print(r'Pytho\n')  # 没有转义
print('I say I love "Python"')  # 双引号显示
print('I say I love \'Python\'')  # 转义单引号
# 反斜杠(\)可以作为续行符,表示下一行是上一行的延续
print('I say I love \
Python')  # 结果:I say I love Python


源代码
# list列表
"""
列表的截取的语法格式如下:
变量[头下标:尾下标:间隔值]
索引值以 0 为开始值,-1 为从末尾的开始位置
"""
list_1 = ['a', 678, 2.23, ['b', 70.2]]
list_2 = [22, 'b']
print(list_1)           # 输出列表
print(list_1[0:-1])     # 输出第一个到倒数第二个的所有元素
print(list_1[0])        # 输出字符串第一个元素
print(list_1[1:3])      # 输出从第二个开始到第三个的元素
print(list_1[2:])       # 输出从第三个开始的后的所有元素
print(list_1[-1])       # 输出最后一位元素
print(list_1[:])        # 输出全部列表元素
print(list_1[::2])      # 每隔2个元素输出列表元素
print(list_1[::-1])     # 倒序输出列表,亦可list_1.reverse()
print(list_1 * 2)       # 输出列表两次,也可以写成:print(2 * list_1)
print(list_1 + list_2)  # 连接列表

源代码
# list内置函数,例如:
list_1 = ['a', 678, 2.23, ['b', 70.2]]
list_2 = ['c', 'd']
# 列表添加元素:append()
list_1.append('c')  # 在list_1末尾追加元素c
list_1.append(list_2)
# 列表插入元素:insert()
list_1.insert(2, 'f')  # 在第二个元素678后面,插入元素f
# 列表更新元素:下标0,表示第一个元素a,更新成e
list_1[0] = 'e'
# 列表删除元素:remove()
list_1.remove(678)
# 列表返回索引位置,从0开始数:index()
list_1.index(2.23)
# 列表排序:sort(),默认会按一定顺序从小到大,排序元素的类型要统一
list_2.sort()
print(list_2)  # 结果:['c', 'd']

源代码
"""
  Author:PortosHan
  Datetime:2021/3/5 15:19
  Project:zbcf_python_lesson_project
"""
str_1 = 'I Love Python'
list_1 = ['1', '2', 'c', 'd']
# 字符串转换成列表
print(list(str_1))  # 结果:['I', ' ', 'L', 'o', 'v', 'e', ' ', 'P', 'y', 't', 'h', 'o', 'n']
# 字符串以空格为分隔符,转换成列表:split()分割函数,默认返回列表
print(str_1.split(' '))  # 结果:['I', 'Love', 'Python']
# 列表转换成字符串:join()连接函数,默认返回字符串
print(''.join(str_1))
# 列表转换成字符串,且以空格隔开
print(' '.join(str_1))  # ' '号里面就是连接符
# 如何知道字符串|列表的其他内置方法:.出来的
# 在PyCharm里通过,str.内置方法,list.内置方法

源代码
# 虽然tuple的元素不可改变,但它可以包含可变的对象,比如list列表
tup0 = (3, 22, ['a', 'b'])
print(id(tup0))  # 结果:1907682610112
tup0[2][0] = 'c'
print('New tup0 is:', tup0, ';and id is:', id(tup0))  # 结果:New tup0 is: (3, 22, ['c', 'b']) ;and id is: 1907682610112
# 构造包含 0 个或 1 个元素的元组比较特殊,所以有一些额外的语法规则:
tup1 = ()     # 空元组
tup2 = (20,)  # 一个元素,需要在元素后添加逗号
# 元组也可以使用+操作符进行拼接
tup3 = (3, 55)
print(tup1 + tup2 + tup3)  # 结果:(20, 3, 55)

源代码
set_1 = {'Google', 'Taobao', 'Facebook', 'Taobao', 'Baidu'}
set_2 = {'Baidu', 'CIAS', 'test'}
# 集合(set)是一个无序的不重复元素序列
print(set_1)  # 结果去重且无序,结果:{'Facebook', 'Baidu', 'Taobao', 'Google'}
# 集合中的元素必须是不可变类型,且可以为不同类型
# 添加元素:add()
set_1.add('CIAS')
print(set_1)  # 结果:{'Baidu', 'Facebook', 'Google', 'CIAS', 'Taobao'}
# 删除元素:remove()
set_1.remove('Facebook')
print(set_1)  # 结果:{'CIAS', 'Taobao', 'Baidu', 'Google'}
# 添加多个元素:update()
set_1.update({'a', 'b'})
print(set_1)  # 结果:{'CIAS', 'Taobao', 'Baidu', 'b', 'a', 'Google'}
# 集合支持:交、并、差、非等集合运算
# 交:set_1.intersection(set_2)  # 或set_1 – set_2
set_all = set_1.intersection(set_2)
print(set_all)  # 结果:{'CIAS', 'Baidu'}
# 并:set_1.union(set_2)         # 或set_1 | set_2
set_all = set_1.union(set_2)
print(set_all)  # 结果:{'Baidu', 'CIAS', 'Taobao', 'a', 'Google', 'test', 'b'}
# 差:set_1.difference(set_2)    # 或set_1 & set_2
set_all = set_1.difference(set_2)
print(set_all)  # 结果:{'a', 'Google', 'b', 'Taobao'}
# 非:set_1.symmetric_difference(set_2)     # 或set_1 ^ set_2
set_all = set_1.symmetric_difference(set_2)
print(set_all)  # 结果:{'test', 'a', 'Taobao', 'Google', 'b'}
# 判断元素是否在集合中存在:'Baidu' in set_1
print('Baidu' in set_1)  # 结果:True

源代码
dic_1 = {'name': 'Portos', 'age': 18, 'sex': 'man'}
# 字典是另一种可变容器模型,且可存储任意类型对象
# 不允许同一个键出现两次,否则只记录最后一个同键的值
dic_2 = {'name': 'PortosHan', 'name': 'Portos'}
print(dic_2)  # 结果:{'name': 'Portos'}
# 键必须是不可变元素
# 访问字典里的值,如:
print(dic_1['name'])  # 结果:Portos
print(dic_1.get('name'))  # 结果:Portos
# 添加元素:如:
dic_1['score'] = 99
dic_1.update({'a': 1})
print(dic_1)  # 结果:{'name': 'Portos', 'age': 18, 'sex': 'man', 'score': 99, 'a': 1}
# 删除元素:
del(dic_1['name'])
dic_1.pop('age')
print(dic_1)  # 结果:{'sex': 'man', 'score': 99, 'a': 1}
# 清空字典:dic_1.clear()
# 判断键是否在字典里:key in dict,如:'name' in dic_1
print('name' in dic_1)  # 结果:False
>>返回主目录
2.2 Python3基础-基本数据类型的更多相关文章
- Python3基础之数据类型(字典)
		Python3数据类型之 字典 字典是另一种可变容器模型,且可存储任意类型对象. 字典的每个键值(key=>value)对用冒号(:)分割,每个对之间用逗号(,)分割,整个字典包括在花括号({} ... 
- Python3基础之数据类型(字符串和列表)
		1.Python字符串方法 1.1.如何在Python中使用字符串 a.使用单引号(') 用单引号括起来表示字符串,例如: str1="this is string"; print ... 
- Python3基础语法和数据类型
		Python3基础语法 编码 默认情况下,Python3源文件以UTF-8编码,所有字符串都是unicode字符串.当然你也可以为原码文件制定不同的编码: # -*- coding: 编码 -*- 标 ... 
- python002 Python3 基础语法
		python002 Python3 基础语法 编码默认情况下,Python 3 源码文件以 UTF-8 编码,所有字符串都是 unicode 字符串. 当然你也可以为源码文件指定不同的编码: # -* ... 
- Python3基础(十二) 学习总结·附PDF
		Python是一门强大的解释型.面向对象的高级程序设计语言,它优雅.简单.可移植.易扩展,可用于桌面应用.系统编程.数据库编程.网络编程.web开发.图像处理.人工智能.数学应用.文本处理等等. 在学 ... 
- Python3基础-目录
		Python3基础-目录(Tips:长期更新Python3目录) 第一章 初识Python3 1.1 Python3基础-前言 1.2 Python3基础-规范 第二章 Python3内置函数&a ... 
- C#基础--之数据类型
		C#基础--之数据类型 摘自:http://www.cnblogs.com/tonney/archive/2011/03/18/1987577.html 在第一章我们了解了C#的输入.输出语句后,我这 ... 
- page74-泛型可迭代的基础集合数据类型的API-Bag+Queue+Stack
		[泛型可迭代的基础集合数据类型的API] 背包:就是一种不支持从中删除元素的集合数据类型——它的目的就是帮助用例收集元素并迭代遍历所有收集到的元素.(用例也可以检查背包是否为空, 或者获取背包中元素的 ... 
- JavaScript基础:数据类型的中的那些少见多怪
		原文:JavaScript基础:数据类型的中的那些少见多怪 Javascript共有6种数据类型,其中包括3个基本数据类型(string,number,boolean).2个特殊数据类型(undefi ... 
随机推荐
- HDU 3032 Nim or not Nim?(SG打表找规律)
			题意: 给你n堆石子,你每次只能操作一堆石子 1.拿去任意个,最少1个 2.把这一堆分成两堆,没有要求对半分 解析+代码: 1 //解题思路: 2 //对于一个给定的有向无环图,定义关于图的每个顶点的 ... 
- hdu5432 Pyramid Split
			Problem Description Xiao Ming is a citizen who's good at playing,he has lot's of gold cones which ha ... 
- Codeforces Round #644 (Div. 3) D. Buying Shovels (数学)
			题意:商店里有\(k\)个包裹,第\(i\)个包裹中含有\(i\)个物品,现在想要买\(n\)物品,你可以选择某一个包裹购买任意次,使得物品数刚好等于\(n\),求最少的购买次数. 题解:首先,假如\ ... 
- SQL Server 新安装启用sa用户/sa用户登录提示管道另一端无进程
			安装时只用windows验证 安装完成后: 首先选中服务器(右键)->属性->安全性->服务器身份验证修改为"SQL SERVER和WINDOWS身份验证模式"其 ... 
- Entity Framework中Remove、Modified实体时,在修改或删除时引发主键冲突的问题
			问题: try { string fileId = context.NewsT.Where(t => t.Id == Model.Id).FirstOrDefault().FileId; str ... 
- OpenStack Train版-6.安装nova计算服务(计算节点)
			安装nova计算服务(computel01计算节点 192.168.0.20)安装软件包 yum install centos-release-openstack-train -y yum insta ... 
- MongoDB 101
			MongoDB 101 Studio 3T https://studio3t.com/academy/ https://studio3t.com/academy/lessons/introducing ... 
- taro swiper & scroll tabs
			taro swiper & scroll tabs https://taro-docs.jd.com/taro/docs/components/viewContainer/swiper.htm ... 
- NGK底层技术如何助力SPC子币VAST高价与安全并行?
			NGK近来使用了新的侧链技术推出了新的SPC侧链代币,以及SPC的子币VAST---维萨币. NGK使用去中心化和开源区块链数据分布式协议,不断打造高倍币,力求成为生态建设参与者们所信赖的高倍币孵化器 ... 
- 星盟全球投资副总裁DENIEL SOIBIM:如何激发创造力
			丹尼尔·索比姆毕业于加州理工大学,2005年通过创建投资俱乐部对潜力公司进行天使投资,获得了美国Blue Run高层的重视,任营收专家评估师,为Blue Run项目提案做风险评估,09年与泰勒·亚当斯 ... 
