python write函数换行_Python基础知识(三)

2023-11-03

e0fac55978ead148981fbe8e675f59d1.png

本章小结

学习越往后越意识到总结的重要性

特别是语法基础,东西太多

不用是真的会直接忘掉

我在总结本文的时候就发现

我当时觉得学得很好很扎实

自信不会忘记的东西,

真的已经被我忘掉了

还不得不依靠百度来解决问题

这坚定了我更新公众号的决心

fighting~

e0fac55978ead148981fbe8e675f59d1.png

首先放上自己的作业:

README

这是一个模拟商城的程序,程序有两个端口,分别为商家端和用户端。

>>商家端<<

可以上架商品修改已经上架商品的属性,在用户登录的时候可以查看各项属性并购买。

>>用户端<<

首次登录会进行注册,然后需要输入一个余额以及密码,之后可以查看商品价格和其他属性,支付购买后放入购物车。用户信息如购物车内的商品等写入了一个json文件(当时还没讲这个模块,废了很大劲才搞懂),再次登录时验证注册时的密码,并且其他信息如上次购买后的余额,以及购买的商品仍然保存可以查看和继续购买

>>商户端<<

91b354d1e229d9d6ba66212fb0341ecd.gif

>>首次登录<<

9f484eac495003d3ac96d748d0866631.gif

>>非首次登录<<

e41caf3d8295ca706be7f2ed644c7952.gif

首次写这么长代码的脚本着实很费力,

不过写完之后就很开心,所以就这个无聊的脚本

我都玩了很久hin久hhhhhhhh

f6ee8d0d3699983f0cab96a5d39ed241.gif e0fac55978ead148981fbe8e675f59d1.png

命令汇总供查阅

文档处理命令:

.read()                          #读取

.write(‘写入内容’)           #写入

.readlines()              #将其转化为列表,列表的每一个元素为文本的一行

.readline()                      #读取一行

.strip()                            #去空格换行

.flush()                           # 强制刷新

.close()                          #关闭打开的文档

.center(50,'-')                 #格式化工具

.tell()                             #指明句柄指针的位置

.seek()         #让指针回到某个位置,括号里面放值

a2d2b74b430b75b5f125538568fca803.png

集合命令:

set()                   #将列表转化为集合

.intersection()     #求交集  ‘&’

.union()              #求并集  ‘|’

.difference()       #求差集 ‘-’

.isdisjoint()         #是否有交集

.issubset()          #是否为子集
.issuperset()       #是否为父集

.symmetric_difference()   #求对称集合 ‘^’

.add()              #集合增加一项,括号放元素

.uppdate()          #可以增加多项

.remove()           #删除一项

len()            #求长度,括号中放集合名

e0fac55978ead148981fbe8e675f59d1.png

冷知识1:

sys.stdout.write('#')   #系统的一种标准输出方式,不会自动换行,可以用来制作进度条,print()会自动换行

sys.stdout.flush()  

冷知识2:

一行代码太长可以使用‘,\’逗号短斜杠的方式来换行

使用with open(’路径\文件名’)as file:   #执行完会自动关闭文档

冷知识3:

*args 接受位置参数,转化成列表

**args 字典参数

e0fac55978ead148981fbe8e675f59d1.png

编码知识:

ASCII 

首先出现,不能存中文,到后来,英文特殊字符均占一个字节,八位

GB2312

存七千多汉字

GB18030 

两万多汉字

GBK 

现在中文使用的编码,各个国家都有自己的GB,导致乱码

Unicode

万国码,存中文字符英文字符都是两个字节,十六位,导致浪费空间

utf-8

英文字符是一个字节,中文三个字节

python的默认编码是utf-8,文件头的作用是说文件编码是什么编码

# -*- coding:utf-8 -*-         #指定编码

e0fac55978ead148981fbe8e675f59d1.png f6ee8d0d3699983f0cab96a5d39ed241.gif

下面是一些实例:

集合:

list_1=[1,3,4,5,4,2,3,]

list_1=set(list_1)     #列表转集合

print(list_1,type(list_1))  #查看数据类型

list2=set([1,3,6,])

求交集 &

print(list_1.intersection(list2))

求并集 \

print(list_1.union(list2))

差集 -

print(list_1.difference(list2)) #在集合1但不在集合2

求是否有交集合

print(list_1.isdisjoint(list2))

求对称集合 ^

print(list_1.symmetric_difference(list2))

.issubset(),.issuperset()  #是否为子集,父集

集合增,增加一项

list_1.add(9)

集合增,增加多项

list_1.update([99,45,22])

集合删一项

list_1.remove(5)

求长度

print(len(list_1))

e0fac55978ead148981fbe8e675f59d1.png

文档处理:

f=open('文件名','r',encoding='utf-8') #文件句柄,也就是文件的内存对象。以可读(也就是可取用)的模式打开文件

其他模式为:

‘w’    以写的模式打开文件,写的时候要注意源文件可能会被覆盖的问题

‘a’     以追加的模式打开文件

‘a+’    以追加写读的模式打开文件

‘w+’    以写读的模式打开文件

‘r+’     以读写的模式打开文件

f=open('学习笔记','r',encoding='utf-8')

for line in f.readlines(): 

print(line.strip())     #.strip是去空格

输出结果为:将整个文档打印出来

f=open('学习笔记','r',encoding='utf-8')

flag=f.tell()     #指明指针的位置

print(f.readline())

f.seek(flag)    #让指针回到指定的位置

print(f.readline())   #回到了第一行

f=open('学习笔记','r',encoding='utf-8')

flag=f.tell()             #指明指针的位置

print(f.readline())    #只打印一行

f.seek(flag)        #让指针回到指定的位置

print(f.readlines())   #转化为以行为元素的列表

e0fac55978ead148981fbe8e675f59d1.png

制作简易进度条的代码:

import sys,time   

for i in range(100):

    sys.stdout.write('#')   #不换行输出

    sys.stdout.flush()       #强制刷新        

    time.sleep(0.1)          #暂停0.1s

e0fac55978ead148981fbe8e675f59d1.png

函数:

定义函数

'''def test(x):      # test函数名字,x 参数

    "函数描述"   #文档描述,可以不添加,但是强烈建议添加

    x+=1            #代码块和程序处理逻辑

    return x       #定义返回值

'''

没有返回值的函数,python在调用过程的时候默认返回一个none

参数组的定义,当参数不确定的时候可以使用

*args 接受位置参数,转化成列表

def name(x,*args):

    print(x)

字典参数**kwargs,一级key,value之间用等号连接,接受关键词参数,转化成字典

注意在函数内定义变量叫局部变量,局部变量在函数外不生效,即作用域在函数内,但是也可以强制改,在变量前声明 global。局部变量只限于整数和字符串,复杂一点的对象比如列表,字典,类等等都可以更改

def name(**kwargs):

    print(kwargs)

a=name(name2={'name':1})

print(a)

递归 

函数在自己内部调用自己(最多递归999层)

递归特性:

1. 必须有一个明确的结束条件

2,每次进入更深一次递归时,题规模相比上次递归都应该有所减少

3.递归效率不高,递归层数过多会导致栈的溢出

f6ee8d0d3699983f0cab96a5d39ed241.gif

END

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

python write函数换行_Python基础知识(三) 的相关文章

  • 【编译原理】【C语言】实验三:递归下降分析法

    C语言 实验环境 Visual Studio 2019 author zoxiii 递归下降分析法 1 实验内容 2 前期准备 2 1 递归下降分析法原理 2 2 要实现的文法 2 3 需要的函数 3 分析过程 3 1 递归下降分析法设计思
  • 51单片机【三】静态与动态驱动数码管

    数码管结构及分类 数码管是发光器件之一 内部由七个条形发光二极管 a b c d e f g 和一个小圆点发光二极管 dp 构成 51单片机开发板上为八段数码管 如下图所示 根据各段的组合不同 显示的字符也就不同 按八个数码管的公共端接线不
  • 信号量--同步和异步的区别

    同步 同步操作类似于 等待通知 当一个进程或线程执行同步操作时 它会等待某个特定的条件或事件发生 然后才继续执行 在信号量中 同步操作可能包括等待某个信号量的值达到特定的状态 或者等待其他进程完成特定的任务 然后再继续执行 同步操作保证了进
  • 数仓工具Hive 概述

    Hive Hive简介 Hive架构 HiveSQL语法不同之处 建表语句 查询语句 Hive查看执行计划 Hive文件格式 Hive简介 Hive是由Facebook开源 基于Hadoop的一个数据仓库工具 可以将结构化的数据文件映射为一
  • vscode代码调整快捷键_21 个VSCode 快捷键,让代码更快,更有趣

    注意 本身尝试的时候 Mac 17 pro 与原文提供的快捷键盘不太同样 mac 对应的 Ctrl 要换成 commandgithub 作为前端开发者来讲 大都数都用过 VSCode 而且也有不少是常常用的 但 VSCode 的一些快捷键可
  • 日本企業の開発管理仕事するときに発生した問題のまとめ。

    上司 交流 工数 要求 必 出来上 日数 多 工数 要求 念 十分 時間 重要 保守任務 受 取 工数要求 前 必 完全状態 確認 断然 断 前回 保守 開発 確認 上司 要求 VSS中 保存 日本 側 転送 前 再 念 完全状態 再 確認
  • K—means(K-均值聚类算法)

    K means算法简介 K means是一种无监督的聚类算法 其中的k代表类簇个数 means代表类簇内数据对象的均值 这种均值是一种队类簇中心的描述 K means算法以距离作为数据对象间相似度的衡量标准 即数据对象间的距离越小 则它们的
  • 2018高中计算机会考时间,2018高中会考时间安排_2018年高中会考什么时候考哪些科目...

    www okfie com 北京 高中会考的成绩关系到我们的高中毕业证 因此我们要对会考做好准备 以下是烟花美文网小编为你整理的2018年高中会考的相关信息 希望能帮到你 2018年高中会考时间 会考时间每一个省都是不同的 有的省只考一次
  • CondaHTTPError: HTTP 000 CONNECTION FAILED for url <https://mirrors.tuna.tsinghua.edu.cn/anaconda/pk

    我是在配置Anaconda环境的时候出现的问题 conda create n py39 python 3 9 一般是配置清华镜像源之后出现的问题 解决方案 C Users 用户名 目录下找到 condarc文件 建议直接复制以下内容替换文件
  • 边开火边移动

    作者 周思博 Joel Spolsky 译 Paul May 梅普华 原文链接 英文 我总会有时候什么事都做不了 我当然还是会去上班 不过却是到处闲逛 每10秒就收一次信 逛逛网站 甚至做些付信用卡帐单之类不用动脑的事 就是没法子进入状况回
  • SpringBoot 2.0 中 HikariCP 数据库连接池原理解析

    作为后台服务开发 在日常工作中我们天天都在跟数据库打交道 一直在进行各种CRUD操作 都会使用到数据库连接池 按照发展历程 业界知名的数据库连接池有以下几种 c3p0 DBCP Tomcat JDBC Connection Pool Dru
  • 分布式消息队列RocketMQ 快速入门

    分布式消息队列RocketMQ 一 RocketMQ概述 概述 1 MQ简介 MQ Message Queue 是一种提供消息队列服务的中间件 是一套提供了消息生产 存储 消费全过程API的软件系统 2 MQ用途 限流削峰 MQ可以将系统的
  • qt: 系统默认程序打开文件或者软件;

    Qt提供了QDesktopServices类 可以利用openUrl函数调用默认程序打开文件 源码参考 ifdef Q OS WIN32 m szHelpDoc QString file m szHelpDoc bool is open Q
  • 购物车中的Ajax技术应用

    精选30 云产品 助力企业轻松上云 gt gt gt 目录 1 前言 2 Ajax基本原理 3 JQuery发送HTTP请求的常用方式 3 1 get 请求实现异步加载 3 2 post 请求实现异步加载 3 3 ajax 请求实现异步加载
  • c语言输入一个五位数,判断是否为回文数

    输入一个五位数 判断是否为回文数 include
  • 【深入理解计算机系统】第一章重点汇总

    当前有如下程序 hello c include
  • 二叉树中的列表

    leetcode 二叉树中的列表 给你一棵以 root 为根的二叉树和一个 head 为第一个节点的链表 如果在二叉树中 存在一条一直向下的路径 且每个点的数值恰好一一对应以 head 为首的链表中每个节点的值 那么请你返回 True 否则
  • 开源教育对话大模型 EduChat

    文章目录 一 前言 二 本地部署 三 使用示例 四 总结 CSDN 叶庭云 https yetingyun blog csdn net 一 前言 教育是一项对人类身心发展产生影响的社会实践活动 旨在从内在激发人们固有或潜在的素质 因此 我们
  • 杭电OJ 1005 Number Sequence

    Number Sequence 页面数据来自 this page from http acm hdu edu cn showproblem php pid 1005 Time Limit 2000 1000 MS Java Others M

随机推荐

  • 把数组排序成最小的数(js)

    思路 要使用字符串来处理 要找到一个排序规则 根据这个规则排成一个最小数 比如 数组 3 32 321 不能直接比较 应该比较332 323 gt 332 gt 323所以32 lt 3 将两个数字n m连成字符串 nm gt mn n
  • ISP基本框架简介

    一 前言 ISP image signal processor 即图像信号处理 是用来对前端图像传感器输出信号进行处理的单元 相机采集图像的流程大概可以理解为 镜头采集到光信号 然后由sensor经过光电转换将光信号转换为电信号 将Baye
  • 联想笔记本电脑u盘重装win10系统教学

    联想笔记本电脑u盘重装win10系统教学 如果你有一个闲置的u盘 那么建议你可以拿它来练手一下u盘重装系统 我们只需要将这个u盘制作成为启动盘 之后有需要重装系统都可以使用它 甚至朋友有需要重装系统 也可以使用它来快速的帮忙重装一个新系统
  • 云计算概念及发展历程

    云计算概念 云计算是一种按使用量付费的模式 这种模式提供可用的 便捷的 按需的网络访问 进入可配置的计算机资源共享池 资源包括网络 服务器 存储 应用软件和服务 这些资源能够被快速提供 只需投入很少的管理狗你工作 或与服务供应商进行很少的交
  • 独立按键控制led灯的亮灭

    独立按键控制一个led灯的亮灭 直接可以控制指定位的变化 include
  • 网上企业订货系统功能列表介绍

    网上企业订货系统功能列表介绍 企业APP订单管理软件 后台功能列表 后台支持手机版本 订货APP 管理订单的APP 后台登陆 输入账号密码登录企业订货管理软件系统 后台首页 显示近日 月 年订单统计 和收款欠款等统计 订单模块 新建订单 通
  • MES系统业务需求收集及整理

    项目小组成立后 我们简单的编制了一个项目立项考察计划表 任务名称 负责人 开始时间 完成时间 需求及功能收集整理 IT项目经理 2018年9月05日 2018年9月20日 厂商考察调研 IT项目总监 2018年9月20日 2018年10月3
  • Socket错误代码对应表(转)

    提示 在命令提示符下输入 net helpmsg 1xxxx就能够得到Windows系统提供的错误提示的详细解释 出现网络联机错误Socket error 11001 表示您的计算机无法连上服务器 请检查您的Proxy设定以及Proxy相关
  • MVVM 框架简介

    MVVM 在 iOS 中的应用 MVVM Model View ViewModel 是基于 MVC Model View Controller 和 MVP Model View Presenter 发展起来的一种新的软件设计框架 并且其包含
  • 492-SGI STL二级空间配置器(allocate内存分配)

    内存池管理函数 allocate 函数 传进去的参数 n就是用户通过容器想开辟的内存的大小 如果大于128字节 就不受内存池管理 通过malloc去 一级空间配置器 如果小于等于128字节 就由内存池管理 假设我们现在要申请13字节的内存块
  • STM32串口溢出中断问题

    之前调试程序 遇到了串口溢出中断的问题 导致主程序被卡死 这里总结分享一下经验 希望对读者有用 对于STM32F103系列单片机 使能接收中断后 溢出中断就会自动被使能 那什么时候会发生溢出中断呢 在RXNE 1 的的条件下 也就是上次数据
  • Java 8: 从永久代(PermGen)到元空间(Metaspace)

    永久代 PermGen 和元空间 Metaspace 的今世前缘 原文链接 原文作者 Monica Beckwith 以下为本人翻译 仅用于交流学习 版权归原作者和InfoQ所有 转载注明出处 请不要用于商业用途 在Java虚拟机 JVM
  • Android 拨打电话

    拨打电话 跳转到拨号界面 用户手动点击拨打 param phoneNum 电话号码 public void callPhone1 String phoneNum Intent intent new Intent Intent ACTION
  • C++使用PCL注册内存以及释放

    最近测试中发现 电脑运行一定时间就会重启 检查后发现其实是内存被占满了 然后电脑就卡住 这时会有两种情况 重启 把某些程序kill掉释放内存 这个时候不一定会kill那些占很多内存的程序 然后接着查 发现其实就是处理点云的一个程序 注册了内
  • 定时任务Schedule的使用

    定时任务或者说定时调度 是系统中比较普遍的一个功能 例如数据归档 清理 数据定时同步 非实时 定时收发 流量控制等等都需要用到定时任务 常见的定时调度框架有Quartz TBSchedule等 同样 Spring自3 0版本起也增加了任务调
  • 单片机:STM32F4x HAL库软硬SPI驱动ST7735s 1.8寸LCD屏幕

    单片机 STM32F4x HAL库软硬SPI驱动ST7735s 1 8寸LCD屏幕 说明 此篇为学习记录 可能存在错误或者不足 如有问题请指出 硬件环境 主控芯片 STM32F411CEU6 主控开发板 WeAct STM32F411CEU
  • LeetCode 817. 链表组件

    题目链接 https leetcode cn problems linked list components C 代码如下 Definition for singly linked list struct ListNode int val
  • ubuntu16.04中安装NFS服务器

    一 宿主机中对NFS服务的支持 安装相关软件 sudo apt get install nfs kernel server sudo apt get install nfs common 配置NFS服务器 编辑exports sudo vi
  • 数据结构与算法(五):优先队列

    一 基本概念 二 基于数组实现的优先队列 1 基于有序数组的实现 2 基于无序数组的实现 三 基于堆实现的优先队列 1 堆的有序化 2 基于堆实现的优先队列 四 索引优先队列 这节总结一下优先队列的常用实现方法 一 基本概念 普通的队列是一
  • python write函数换行_Python基础知识(三)

    本章小结 学习越往后越意识到总结的重要性 特别是语法基础 东西太多 不用是真的会直接忘掉 我在总结本文的时候就发现 我当时觉得学得很好很扎实 自信不会忘记的东西 真的已经被我忘掉了 还不得不依靠百度来解决问题 这坚定了我更新公众号的决心 f