数据类型

字符串

1、列举python中的基本数据类型

  数字:int

  布尔值:bool

  字符串:str

  列表:list

  元组:tuple

  字典:dict

  集合:set

然后我们需要了解一些运算符,应为这些基本类型常常会用于一些运算等等

一、运算符

  运算度可以根据最终获得的值不同,可以分为两类,即结果为具体的值,结果为bool值,那么那些结果为具体的值--> 算数运算, 赋值运算,那些结果又为bool值

  --> 比较运算、逻辑运算和成员运算

  1、算数运算

  

  2、赋值运算

  

  3、比较运算

  

  4、逻辑运算

  

  5、成员运算

  

二、基本数据类型

  1、数字 ---> int

    在 python2 中,整数的大小是有限的,即当数据超过一定的范围不再是 int 类型,而是 long 类型,而在 python3 中,无论值针对整数的大小长度为多少,统称为整形int。

  2、布尔值 ---> bool类

  对于bool 值,只有两种结果即 True 和 False ,期分别对应与二进制中的 0 和 1,而对于真即 True 的值太多了,我们只需要了解加急假 即 False 的值 有哪些

  ---> None 、空(即【】/()/“”/{})、0

  

# 以下结果为假
>>>bool(None)
False
>>> bool(‘’)
False
>>>bool([])
False
>>>bool(0)
False
>>>bool({})
False

  3、字符串 --> str

  关于字符串是python 中最常用的数据类型,其用途也很多,我i们可以使用单引号‘’ 或者 "" 类创建字符串

  字符串是不可修改的,所有关于字符我们可以从索引、切片、长度、遍历、删除、分割、清除空白、大小写转换,判断以什么开头等方面对字符串进行介绍。

    创建字符串

    

name = “little_five”
print(name)

    切片

    

# 获取切片,负数戴白哦倒数第几个,从 0 开始
>>> name = ‘little_live’
>>> name[1]
'i'
>>> name[0: -2] # 从第一个到倒数第二个, 不包含倒数第二个
‘little_fi’

    索引 --> index()、find()

name = ‘little_five’
# index -> 获取索引,第二个参数指定获取该字符串或者子序列的第几个
print(name.index('i'm, 2)) # 结果为 4 # find 其作用与index 相似
print(name.find('i', 2)) # 结果为 4

    index 和 find 的不同之处在于:若索引的该字符或者序列不在字符串中,对于 index --> ValueError: subdtring not found, 而 对于 find --> 返回 -1

    长度:len()

    删除: del

    判断字符串内容 --.> isslnum()、isalpha()、isdigit()

# 判断是否全为数字
>>> a = ""
>>>a.isdigit()
True
>>> a = "a123"
>>>a.isdigit()
False # 判断是否全为字母
>>>d = 'alx--e'
>>>d.isalpha()
False
>>>c = 'alex'
>>>c.isdigit()
True # 判断是否全为数字或字母
>>> e = "abc123"
>>> e.isalnum()
True

  join()

# joni() 连接字符串。将字符串,元组、列表中的元素以指定的字符(分隔符),连接生成一个新的字符串

# 字符串
>>>name = “littlefive”
>>> ‘-’。join(name)
'l-i-t-t-e-f-i-v-e' # 列表
>>> info = ['xiaozhou', 'say','hello', 'world']
>>> '--'.join(info)
'xiaowu--say--hello--world'

  5、元组 ---> tuple()

    元组即为不可修改的列表、其特性跟list相似、其使用远括号而不是方括号来标识

# 元组
name = ('hello', 'world')
print(name[0])

  6、字典 -- dict

    字典是一系列的 键值对,每个键值对用逗号隔开,每个建都与一个值相对应,可以通过键来获取值,字典是无序的

    键的定义必须是可变的,既可以数字、字符串、也可以是元组,还有布尔值等等

    而值的定义可以是任意的数据类型

    

# 字典的定义
info = {
1:""Hello world“, # 键为 数字
(”hello world"):1, # 键为元组
False:{
”name“:"james",
} ,
"age": 26
}

    遍历 --> items 、 keys、 values

  7、set 集合

    关于集合set的定义,在我看来集合就像一个篮子,你可以往里面村东西也可以从里面取东西,但是这些东西又是无序的,你很难指定单独取某一样东西,同时它又可以通过一定的人方法选取获得您需要的那部分东西

故集合可以创建、增、删、改、关系运算

    集合的特性:

      1、去重

      2、无序

      3、每个元素必须是不可变类型(hashable类型,可作为字典的key)

    创建:set、frozenset

# 1、创建、将会自动去重、其元素为不可变数据类型、即数字,字符串、元组
rest1 = {”zhangsan“, "list1", '',("hello", 'world', ), True}
test2 = set({”zhangsan“, "list1", '',("hello", 'world', ), True}) # 2 、不可变集合创建
test = frozenset(”zhangsan“, "list1", '',("hello", 'world', ), True)

    增: add、 update

# 更新单个值
names = {'zhangsan', 'lisi', "wangwu "}
names.add("james") # 其参数类型必须是hashtable类型
print(names) # 更新多个值 --> update()
names = {"zhangsan", 'luisi', 'wangwu'}
names.update({'alex'},'james') # 其参数必须为集合
print(names)

  删除:pop、remove、discard

# 随机山输 pop
names = {"zhangsan","lisi","wangwu","alex","james"}
names.pop()
perint(names) # 指定删除,若要删除元素不存在,则报错
names = {"zhangsan","lisi","wangwu","alex","james"}
names.remove('lisi')
print(names) # 指定删除,如要删除元素不存在,则无视改方法
names = {"zhangsan","lisi","wangwu","alex","james"}
names.discard('hello')
print(names)

    关系运算:交集、并集|、差集-、交集补集^, issubset、issuperset

      比如两个班英语班和数学班,我们需要统计两个班中的报名情况,例如即报名了英语班又报名了数学班的同学名字等等,这是后就可以应用到集合的关系运算:

endlish_c = {’zhangsan‘, lisi‘, 'wangeu', 'James', 'Alex'}
math_c = {"wangwu", 'liudehua', 'james', 'alex'} # 1、交集 --> in a and in b
# 统计即报了英语班又报了数学班的同学
print( english_c & math_c)
print(english_c.intersection(math_c))
# 输出为: {’Alex‘, 'James'} # 并集 in a or in b
# 统计报名了两个班的所有同学
print(english_c | math_c)
print(english.union(math_c)) # 差集 in a not in b
# 统计只报了英语班的同学
print(english_c - math_c)
print(english_c.difference(math_c)) # 交差集
# 统计值报名一个班的同学
print(englisj_c ^ math_c)

  判断两个集合关系是子集、父集 --> issubset、 issuperset

# issubset -- > n 是否为 m 的子集
# n 是否为 m 的父集
n = {1,2,3,4,8,10}
m = {2,4,6}
i = {1,2,11} print(n >= m)
print( m <= n)

    

  

python面试题手动总结答案锦集的更多相关文章

  1. 315道python面试题(参考答案)

    第一部分 Python基础篇 1:为什么学习Python 家里有在这个IT圈子里面,也想让我接触这个圈子,然后给我建议学的Python, 然后自己通过百度和向有学过Python的同学了解了Python ...

  2. Python面试题集合带答案

    目录 Python基础篇 1:为什么学习Python 2:通过什么途径学习Python 3:谈谈对Python和其他语言的区别 Python的优势: 4:简述解释型和编译型编程语言 5:Python的 ...

  3. python面试题300道答案参考1

    提示 自己整合的答案,虽有百家之所长,仍很局限,如有需要改进的地方,或者有更好的答案,欢迎提出! [合理利用 Ctrl+F 提高查找效率] 文章来源    https://www.cnblogs.co ...

  4. (面试题)python面试题集锦-附答案

    1.一行代码实现1-100的和 sum_1_100 = sum(range(1, 101)) 2.如何在一个函数内修改全局变量的值 a = 100 def foo(): global a a = 30 ...

  5. Python面试题及答案汇总整理(2019版)

    发现网上很多Python面试题都没有答案,所以博主花了很长时间搜集整理了这套Python面试题及答案,由于网上的Python相关面试题大多数都是2019年的,所以我这个也是2019版的,哈哈~ (文末 ...

  6. C#笔试题面试题锦集(全)总20篇

    前些时候找过一次工作,收集了很多不错的笔试题目.共享一下:) C#笔试题面试题锦集(20) 微软应试题目 (2010-01-15 21:32) C#笔试题面试题锦集(19) 雅虎C#题目 (2010- ...

  7. 常见的 35 个 Python 面试题及答案

    1. Python 面试问题及答案 作为一个 Python 新手,你必须熟悉基础知识.在本文中我们将讨论一些 Python 面试的基础问题和高级问题以及答案,以帮助你完成面试.包括 Python 开发 ...

  8. 40道Java基础常见面试题及详细答案

    最近看到网上流传着各种面试经验及面试题,往往都是一大堆技术题目贴上去,但是没有答案. 为此我业余时间整理了40道Java基础常见的面试题及详细答案,望各路大牛发现不对的地方不吝赐教,留言即可. 八种基 ...

  9. python公司面试题集锦 python面试题大全

    问题一:以下的代码的输出将是什么? 说出你的答案并解释. class Parent(object): x = 1 class Child1(Parent): pass class Child2(Par ...

随机推荐

  1. CSS学习(1)简介

    什么是 CSS? CSS 指层叠样式表 (Cascading Style Sheets) 样式定义如何显示 HTML 元素 样式通常存储在样式表中 把样式添加到 HTML 4.0 中,是为了解决内容与 ...

  2. 【Vue路由系统详述】

    目录 路由命名 路由参数 路由参数的实现原理 子路由 子路由之append 动态绑定属性 子路由之append升级版 子路由之非append 路由重定向 手动路由 路由钩子 在路径中去掉"# ...

  3. 论STA | SOCV / POCV 之 variation (2)

    芯片制造涉及到许多复杂重复的过程,如:光刻.蚀刻.离子注入.扩散.退火.而且都是原子级操作,尽管控制非常严格,但偏差不可避免. 工艺偏差会导致芯片物理参数偏差,如:线宽.沟道掺杂浓度.线厚.临界尺寸. ...

  4. Python - 用python实现split函数

    # pattern支持字符或者字符串 def my_split(string, pattern): ret = [] len_pattern = len(pattern) while True: in ...

  5. linux配置放火墙开放端口

    vi /etc/sysconfig/iptables -A INPUT -m state –state NEW -m tcp -p tcp –dport 80 -j ACCEPT(允许80端口通过防火 ...

  6. HyperLedger Fabric 资料网址大全

    BLOCKCHAIN FOR DEVELOPERS 官方网址 i. 这个网址是ibm给的测试网址,注册进去就可以设置4个节点的区块链,而且有智能合约可以测试 区块链和HyperLedger开源技术讲堂 ...

  7. java篇 之 多态

    2018-9-28 多态: 重载也称为静态多态(静态在编译阶段就能确定)(动态是跟运行时挂钩) 尽量去选择关系轻的,降低耦合度(紧密度) 内聚: 减少与外界的联系,降低与其他对象和类的联系 对象与对象 ...

  8. JSP技术(一)

    Servlet的两个缺点: 1.首先,写在Servlet中所有的HTML标签必须包含JAVA字符串,使得处理HTTP响应报文工作十分繁琐. 2.所有的文件和HTML标记是硬代码,导致即使是微小变化,也 ...

  9. 【C语言】(数组)C语言字符串中的小写字母转换为大写字母

    先判断后转化 原理: 这类题目主要通过ASCII(美国信息交换标准代码)码差值实现,A对应ASCII码十进制数字是65,a对应ASCII码十进制数字是97,即大小写字母之间ASCII码差值为32,想要 ...

  10. dateadd()日期加法运算