python基础杂记
一.编码
1.ACSII 0000 0001 8位 一个字节
2. uncoide 0000 0001 0000 0001 0000 0001 0000 0001 32位 四个字节
3.utf-8 英文 0000 0001 8位 一个字节
中文 0000 0001 0000 0001 0000 0001 24位 三个字节
4.gbk 英文 0000 0001 8位 一个字节
中文 0000 0001 0000 0001 16位 两个字节
**(文件存储,传输不能使用uncoide编码(太占空间))
(可以使用 ASCII,utf-8,gbk等等)
5.python3中
str类型:使用 uncoide编码
byte类型:使用其他类型编码
str类型与byte类型的区别:(当字符是英文时)
a='alex'
b=b'alex'
print(a,type(a))
print(b,type(b)) #alex <class 'str'>
#b'alex' <class 'bytes'>
当字符时中文时将str类型转换为其他类型编码
b='中国'
b2=b.encode('utf-8')
print(b2) #b'\xe4\xb8\xad\xe5\x9b\xbd'
二. 小数据池
数字(-5--- 256)与字符串(不能有特殊字符)
其他像列表,元组,字典都不行
a='alex'
b='alex'
print(a is b) #True a=12
b=12
print(a is b) #True
a=[1,2]
b=[1,2]
print(a is b) #False
#a 和 b 的内存地址不一样
但是任何类型利用“=”赋值时如下:
a=[1,2,3]
b=a
print(a is b) #True a={'a':1}
b=a
print(a is b) #True
三.运算符(面试题)
# x or y x为真时,返回x
# x and y x为真时,返回y
print( 5 > 4 or 1 ) #Ture
print( 0 or 4 ) #
print( 0 and 4 ) #
print( 5>4 and 1 ) #
print( 5<4 and 1 ) #False
四 .字符串常用方法。
#数字符串中的元素出现的个数。
# ret3 = a1.count("a",0,4) # 可切片
# print(ret3) a4 = "dkfjdkfasf54"
#startswith 判断是否以...开头
#endswith 判断是否以...结尾
# ret4 = a4.endswith('jdk',3,6) # 顾头不顾腚
# print(ret4) # 返回的是布尔值
# ret5 = a4.startswith("kfj",1,4)
# print(ret5) #split 以什么分割,最终形成一个列表此列表不含有这个分割的元素。
# ret9 = 'title,Tilte,atre,'.split('t')
# print(ret9)
# ret91 = 'title,Tilte,atre,'.rsplit('t',1)
# print(ret91) #format的三种玩法 格式化输出
res='{} {} {}'.format('egon',18,'male')
res='{1} {0} {1}'.format('egon',18,'male')
res='{name} {age} {sex}'.format(sex='male',name='egon',age=18) #strip
name='*barry**'
print(name.strip('*'))
print(name.lstrip('*'))
print(name.rstrip('*')) #replace
name='alex say :i have one tesla,my name is alex'
print(name.replace('alex','SB',1)) #####is系列
name='taibai123' print(name.isspace()) #字符串由空客
print(name.isdigit()) #字符串只能有数字组成
print(name.isalnum()) #字符串由字母或数字组成
print(name.isalpha()) #字符串只由字母组成
print(name.isdecimal()) #字符串只由十进制组成 #############下面这些方法在数据类型补充时会讲到,现在不讲####################
#寻找字符串中的元素是否存在
# ret6 = a4.find("fjdk",1,6)
# print(ret6) # 返回的找到的元素的索引,如果找不到返回-1 # ret61 = a4.index("fjdk",4,6)
# print(ret61) # 返回的找到的元素的索引,找不到报错。 #captalize,swapcase,title
print(name.capitalize()) #首字母大写
print(name.swapcase()) #大小写翻转
msg='taibai say hi'
print(msg.title()) #每个单词的首字母大写 # 内同居中,总长度,空白处填充
ret2 = a1.center(20,"*")
print(ret2)
四.文件操作
rb:能打开所有文件(非文字文件 。例如:图片,视频。。。)
w:只写
f=open('xiaomeng','r',encoding='utf-8') #相对地址
#f=open('D://xiaomeng','r',encoding='utf-8') #绝对地址
content=f.read()
print(content)
f.close()
r :只读(会覆盖原来文本中的文字)
f=open('xiaomeng','w',encoding='utf-8')
f.write('大帅逼')
f.close()
a:追加
f=open('xiaomeng','a',encoding='utf-8')
f.write('大傻逼')
f.close()
(r+ w+ a+ )都不常用
tell():告诉光标位置
seek():调光标(从哪里开始读)
f=open('xiaomeng','a+',encoding='utf-8')
a=f.seek(9) #一个中文占3个字节,一个英文占1个字节 (9是字节数)
content=f.read(a)
print(content)
f.close()
os.remove(文件名):删除文件
os.rename(新文件名,旧文件名)重命名
python基础杂记的更多相关文章
- python之最强王者(2)——python基础语法
背景介绍:由于本人一直做java开发,也是从txt开始写hello,world,使用javac命令编译,一直到使用myeclipse,其中的道理和辛酸都懂(请容许我擦干眼角的泪水),所以对于pytho ...
- Python开发【第二篇】:Python基础知识
Python基础知识 一.初识基本数据类型 类型: int(整型) 在32位机器上,整数的位数为32位,取值范围为-2**31-2**31-1,即-2147483648-2147483647 在64位 ...
- Python小白的发展之路之Python基础(一)
Python基础部分1: 1.Python简介 2.Python 2 or 3,两者的主要区别 3.Python解释器 4.安装Python 5.第一个Python程序 Hello World 6.P ...
- Python之路3【第一篇】Python基础
本节内容 Python简介 Python安装 第一个Python程序 编程语言的分类 Python简介 1.Python的由来 python的创始人为吉多·范罗苏姆(Guido van Rossum) ...
- 进击的Python【第三章】:Python基础(三)
Python基础(三) 本章内容 集合的概念与操作 文件的操作 函数的特点与用法 参数与局部变量 return返回值的概念 递归的基本含义 函数式编程介绍 高阶函数的概念 一.集合的概念与操作 集合( ...
- 进击的Python【第二章】:Python基础(二)
Python基础(二) 本章内容 数据类型 数据运算 列表与元组的基本操作 字典的基本操作 字符编码与转码 模块初探 练习:购物车程序 一.数据类型 Python有五个标准的数据类型: Numbers ...
- Python之路【第一篇】python基础
一.python开发 1.开发: 1)高级语言:python .Java .PHP. C# Go ruby c++ ===>字节码 2)低级语言:c .汇编 2.语言之间的对比: 1)py ...
- python基础之day1
Python 简介 Python是著名的“龟叔”Guido van Rossum在1989年圣诞节期间,为了打发无聊的圣诞节而编写的一个编程语言. Python为我们提供了非常完善的基础代码库,覆盖了 ...
- python基础之文件读写
python基础之文件读写 本节内容 os模块中文件以及目录的一些方法 文件的操作 目录的操作 1.os模块中文件以及目录的一些方法 python操作文件以及目录可以使用os模块的一些方法如下: 得到 ...
随机推荐
- 使用 docker-compose 快速安装Jenkins
本文分享在 docker 环境中,使用 docker-compose.yml 快速安装 Jenkins,以及使用主机中的 docker 打包推送镜像到阿里云 博客园的第100篇文章达成,2019的第一 ...
- linux入门--操作系统是什么,操作系统概述
Linux 也是众多操作系统之一,要想知道 Linux 是什么,首先得说一说什么是操作系统. 计算机是一台机器,它按照用户的要求接收信息.存储数据.处理数据,然后再将处理结果输出(文字.图片.音频.视 ...
- @vue/cli 3.0 使用 svg-sprite-loader 加载本地 SVG 文件
目录 @vue/cli 3.0 使用 svg-sprite-loader 加载本地 SVG 文件 运行 使用 配置 svg-sprite-loader 调用当前环境下的颜色 props @vue/cl ...
- ASP.NET Core中使用GraphQL - 第二章 中间件
前文:ASP.NET Core中使用GraphQL - 第一章 Hello World 中间件 如果你熟悉ASP.NET Core的中间件,你可能会注意到之前的博客中我们已经使用了一个中间件, app ...
- 【Android Studio安装部署系列】三十三、windows系统中通过SourceTree使用git
版权声明:本文为HaiyuKing原创文章,转载请注明出处! 概述 前期准备 选择代码托管服务器:gitlab.github.开源中国等. 注册账号 创建项目 安装git 参考<[Android ...
- Windows下SVN服务器搭建和基本操作(服务端、客户端)
自己打算打一个SVN服务器了解一下,所以顺便记录一下整个的过程 下载 服务端 https://www.visualsvn.com/server/download/ 客户端 https://www.vi ...
- Python获取网络中的存活主机以及哪些主机是Linux
这个脚本用于扫描网络中的存活主机,通常在CMDB中自动获取主机的时候用到. #!/usr/bin/env python # -*- coding: utf-8 -*- ""&quo ...
- Spring Boot 2.x基础教程:快速入门
简介 在您第1次接触和学习Spring框架的时候,是否因为其繁杂的配置而退却了?在你第n次使用Spring框架的时候,是否觉得一堆反复黏贴的配置有一些厌烦?那么您就不妨来试试使用Spring Boot ...
- .net core中使用autofac进行IOC
.net Core中自带DI是非常简单轻量化的,但是如果批量注册就得扩展,下面使用反射进行批量注册的 public void AddAssembly(IServiceCollection servic ...
- sql字符串分割扩展方法
可编程性—表值函数 SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO CREATE FUNCTION [dbo].[Split] ( @RowData ...