一.数字 int

二.字符串 str

#以下均为补充内容

#对于空字符串是假
#数字0是假 #数字和字符串可以相互转换
# a="123"
# b=int(a) # a=123
# b=str(a) #-1表示“x”,-2表示“e”
# test="alex"
# test[0:-2] #将range内容从后往前输出
# for i in range(5,0,-1):
# print(i) def check_code():
import random
checkcode = ''
for i in range(4):
current = random.randrange(0, 4)
if current != i:
temp = chr(random.randrange(65, 90))
else:
temp = random.randint(0, 9)
checkcode += str(temp)
return checkcode while True:
code = check_code()
print(code)
user_in=input(">>>")
user_in_up=user_in.upper()
if user_in_up==code:
break
print("验证码正确")

三.列表 list

# 中括号括起来
# 逗号分割每个元素
# 列表中的元素可以是数字,字符串,或者列表本身,布尔值等
li = [1, 12, 9, "age", "diji", ["dskjd", "djsds"]]
# 通过索引取值
print(li[5]) # 通过切片取值,切片结果也是列表
print(li[3:5]) # 支持for循环和while循环 # 列表是拿链表储存的,锁所以可以修改。
# 字符串是顺序存储的,所以修改的时候内存中的所有字符都要向后移获取向前移。所以修改的代价太大
# 修改方式一,索引
li[0] = "lzd"
print(li)
# 修改方式二,切片 # 删除方式一,索引
del li[0]
print(li)
# 删除方式二,切片 # 支持in和not in的操作
v = "dskjd" in li[4]
print(v) # 取出来的是'dskjd'中的's'
li = [1, 12, 9, "age", "diji", ["dskjd", "djsds"]]
print(li[5][0][1]) # 列表在进行转换的时候,本质上是for循环。所以数字不可以转换
s = "dfsadkfuafehfafdhajdjda"
new_s = list(s)
print(new_s) # 列表转换成字符串
# 需要自己写for循环一个一个处理,既有数字又有字符串
# 用str转换会默认这个字符串是一个整体
s = ""
for i in li:
s += str(i)
print(s) # 如果只有字符串的情况,可以用join,join就是在内部在做for 循环
li = ["jskd", "dsios", "ifsi", "fdif"]
v = "".join(li)
print(v) # append和extend的区别就是,append是将追加的值作为一个整体追加到列表的后边
# expend可以进行迭代,将列表的值拆分成元素追加到列表的后面
# expend的参数必须是可迭代的对象,比如说字符串获取列表
li.extend([9898, "不得了"])
print(li)
# *************************************
# 其他不常用的如下
# none表示什么都没有,在原来值最后追加
li = [11, 22, 33, 22, 44]
v = li.append(5)
print(v)
print(li) # 表示清空列表中的值
# li.clear()
# print(li) # 拷贝,浅拷贝
v = li.copy()
print(v) # 计算元素出现的次数
v = li.count(22)
print(v) # 找某个值的索引位置,最左优先,可以规定起始位置和最后位置
v = li.index(33)
print(v) # 在指定索引位置插入元素
li.insert(0, 99)
print(li) # pop和remove都是删除
# pop可以获取删除的值,默认删除最后一个元素,用索引指定
# remove指定的是删除的值,没有默认情况,如果遇到相同的,按照从左到右的顺序进行删除
v = li.pop(1)
print(v) li.remove(33)
print(li)
# PS: pop remove del li[0] del li[7:9] clear # 将当前列表进行反转
li.reverse()
print(li) # 排序,可以进行从大到小排,也可以进行从小到大排序
li.sort(reverse=True)
print(li)

四.元组 tuple

# 元组,元素不可被修改,不能被增加或者删除
tu = (111, 22, 33, 44,)
# 一般写元组的时候,在最后加个逗号,和参数区别
# 索引
v = tu[0]
print(v) # 切片
v = tu[0:2]
print(v) # 不可以修改,增加或者删除
# 可以被for循环,可迭代对象
for item in tu:
print(item) # 列表,元组,和字符串之间可以相互转换
# 元组转换成字符串的时候,如果只有字符串可以用join
# 如果既有字符串又有数字的话,也是智能自己写for循环,和列表差不多 # 元组是有序的
tu = (111, "alex", (11, 22), [(33, 44)], True, 33, 44)
print(tu[3][0][0]) # 元组的一级元素不可修改,删除,增加,但是二级元素如果是可修改的类型就可以修改 # count,获取指定元素在元组中出现的次数 # index,获取指定元素的索引位置

五.字典 dict

# value可以是任意类型
info = {
"k1":"v1",#键值对
"k2":"v2"
}
print(info) # 列表和字典都不可以作为'k'值,以哈希表的方式存储
# 字典是无序的,可以通过自己规定的索引找到相应的值
v = info["k1"]
print(v) # 可以进行删除
# del info["k1"]
# print(info) # for循环,默认输出的是k。info.keys和默认情况向同
for i in info:
print(i) for i in info.values():
print(i) # 即输出键又输出值
for k,v in info.items():
print(k,v) # 如果出现k值重复,只能保留一个。
# 布尔值和0,1可能重复 # clear # copy浅拷贝 # 静态方法
# 根据序列,创建字典,并指定统一的值
v = dict.fromkeys(["k1",123,999],123)
print(v) #info.get("k1")和按照索引取值的区别就是:
#如果索引取值不存在会直接报错,而get则会返回none。如果不存在也可以通过参数指定返回值 #删除,,也可以通过参数等到当前删除值得value
#如果不存在,也可以指定一个默认的值返回给用户
# v=info.pop("k1")
# print(info,v) #popitem字典中随机删除键值对 #进行设置,如果存在则不设置,不做任何变化。也可以获取值
info.setdefault("k3",123)
print(info) info.update({"k3":12345,"k4":123})
info.update(k5=456)
print(info) #*******************最常用 keys items values get update********************************

六.布尔值 bool

# 0 1
# bool(...)
# 假:none,"",[],(),{},0

七.整理

# 一.数字
# int(...)
#
# 二.字符串
# replace/find/join/strip/startswith/split/upper/lower/fomat
s = "i am {name},age is {age}"
v = s.format(**{"name":"lzd","age":19})
print(v) # 三.列表
# append/extend/insert # 四.元组
# 一级元素不能被修改,删除,增加
#
# 五.字典
# get/update/keys/items/values
#
# 六.布尔
# 0 1
# bool(...)
# 假:none,"",[],(),{},0

Python学习第四天的更多相关文章

  1. python学习第四讲,python基础语法之判断语句,循环语句

    目录 python学习第四讲,python基础语法之判断语句,选择语句,循环语句 一丶判断语句 if 1.if 语法 2. if else 语法 3. if 进阶 if elif else 二丶运算符 ...

  2. python学习第四次笔记

    python学习第四次记录 列表list 列表可以存储不同数据类型,而且可以存储大量数据,python的限制是 536870912 个元素,64位python的限制是 1152921504606846 ...

  3. Python学习(四)数据结构(概要)

    Python 数据结构 本章介绍 Python 主要的 built-type(内建数据类型),包括如下: Numeric types          int float Text Sequence ...

  4. python学习-第四天补充-面向对象

    python学习-第四天补充-面向对象 python 私有 --name mangling(名字修改.名字) 在命名时,通过使用两个下划线作为开头,可以使得这个变量或者函数编程私有的,但是这个其实的p ...

  5. python学习第四十八天json模块与pickle模块差异

    在开发过程中,字符串和python数据类型进行转换,下面比较python学习第四十八天json模块与pickle模块差异. json 的优点和缺点 优点  跨语言,体积小 缺点 只能支持 int st ...

  6. Python学习(四)cPickle的用法

    python中有两个类似的:pickle与cPickle:两者的关系:“cPickle – A faster pickle” pickle模块中的两个主要函数是dump()和load().dump() ...

  7. Python学习笔记(四)Python函数的参数

    Python的函数除了正常使用的必选参数外,还可以使用默认参数.可变参数和关键字参数. 默认参数 基本使用 默认参数就是可以给特定的参数设置一个默认值,调用函数时,有默认值得参数可以不进行赋值,如: ...

  8. Python学习(四十二)—— Djago-model进阶

    一.QuerySet 可切片 使用Python 的切片语法来限制查询集记录的数目 .它等同于SQL 的LIMIT 和OFFSET 子句. Entry.objects.all()[:5] # (LIMI ...

  9. Python学习笔记四

    一.装饰器 1.知识储备 函数对象 函数可以被引用 函数可以当参数传递 返回值可以是函数 可以当作容器的元素 def func1(): print (666) def func2(): print ( ...

  10. python学习第四天笔记整理

    一.迭代器及生成器 #迭代器:迭代的工具 #1 什么是迭代:指的是一个重复的过程,每一次重复称为一次迭代,并且每一次重复的结果是下一次重复的初始值# while True:# print('===== ...

随机推荐

  1. PHP工程师必备知识整理

    一.http/https协议,tcp/ip协议,websocket,session,cookie 二.php:oop,thinkphp5,laravel 三.mysql.memcache.redis ...

  2. LOB

    一,LOB介绍 1,概念 LOB 是指用来存储大对象的数据类型,一般说LOB只是泛指,具体有BLOB,CLOB,NCLOB,BFILE.   根据你数据库的设置,一个LOB可以存储的最大大小从8TB到 ...

  3. python 【pandas】账号、银行卡号、身份证号导出文件后以科学计数法显示问题解决

    问题描述:excel表中的一些数据会以文本格式格式保存,例如一些较长的编号.银行账号.身份证号等,再python中导出文件后,会发现数据以科学计数法显示,影响后续使用. data2_3.to_exce ...

  4. iframe之间的postMessage传参

    1.传参 function IframeClose() { var obj = {method: "iframeClose"}; window.parent.postMessage ...

  5. 7.12 其他面向对象设计原则3: 依赖倒置原则DIP

    其他面向对象设计原则3: 依赖倒置原则DIP  The Dependency Inversion Principle7.1 依赖倒置原则DIP The Dependency Inversion Pr ...

  6. BUAA_OO第二单元作业总结——多线程

    OO第二单元作业总结——多线程 单元任务 本单元主要的内容是通过模拟电梯的运行来熟悉多线程的实现,从简单的单部FAFS电梯开始,ALS电梯,到最后的多部ALS电梯. 一.设计策略分析总结 1.1 多线 ...

  7. redis 集群引出hash一致性算法

    写的很棒的文章 https://blog.csdn.net/bntX2jSQfEHy7/article/details/79549368 这篇分析的更叼 https://www.jianshu.com ...

  8. js给图层添加动态样式

    需求:需要在视窗内随意点击对应位置,图层从上到下匀速运动到指定位置 html <img id="moveDot" class="moveDot" src= ...

  9. python--网络编程requests

    一.requests 之前使用python自带的urllib模块去请求一个网站或者接口,但是urllib模块太麻烦了,传参数的话,都得是bytes类型,返回数据也是bytes类型,还得解码,想把返回结 ...

  10. VS中无法打开Qt资源文件qrc

    问题:双击项目中的qrc文件没反应. 解决方法: 网上搜索的方法说是要,右击->打开方式,添加qrceditor编辑器 但我的项目中Qt Resource Editor已经是默认的了. 那就是q ...