PYTHON -- 基础3
1.数据类型
1.int 类型 用于计算
1.1 bit_length()
转换为2进制的最小位置 有效的
i = 5
print(i.bit_length())
i | 二进制 | i.bit_length() |
1 | 0000 0001 | 1 |
2 | 0000 0010 | 2 |
5 | 0000 0101 | 3 |
2.boot :布尔值 T F 用于判断
转换问题
2.1 int---str
i = 1
str(i)
没有条件
2.1.2 str---int
只能是数字转换
s = '123' //'123w'不行//
i = str(s)
2.2 int --- bool
i = 3
b = bool(i)
PS:只要是0 就是False 非0就是True
2.2.1 bool ---int
True ---1 False---0
2.3 转换效率问题
while True:
pass
while 1:
pass
下面的要比上面的效率高
2.4 str---bool
2.4.1
s = "" -----> False
非空字符串都是True
s = "0" -----> True
s
if s:
print('你输入的为空,请重新输入')
else:
pass
3.str类型: 存储少量数据,进行操作 !!! 有引号引起来的 “XXXX”
3.1 字符串的索引和切片
字符串 是有顺序的 有序号的
s =‘ASD456FGG’
序号 0123456789
假如要取出A 只用输出序号即可
# s1 = s[0]
# print(s1)
S1 同时也是字符串 对字符串进行操作 产生的也是字符串
取出来的和原来的没有影响
3.2 切片 // 固头不过尾//
要取出ASD4
# s5 = s[0:4]
# print(s5)
而不是[0:3]
3.2.1 反向取值
# s3 = s[-1]
# print(s3)
PS: 从正向取值就从0开始,反向就从 -1开始取值 但是要想全部取出来 就是s[0:-2] 因为切片是固头不固尾
3.3 取中间跳着取
s = 'ABCDLSESRF' # s[首:尾:步长]
# s10 = s[0:5:2]
PS :步长必须是等长的
反向取
# print(s10)
s11 = s[4:0:-1]
但是这样会出LDCB 不会有A 若要有A 应该:
print(s11)
s12 = s[4::-1]
PS 主要是倒着着取 开头都是-1 同时 步长的 正负代表方向
4.list:列表 存储大量的数据 [ 123,123, ] 逗号分隔为1组
5.元祖:和列表一样存储大量数据 (132,123) 但是元祖是只读列表:只能读取,不能修改!
6.dict :字典 {‘name’:‘tom’,‘age’:‘16’}储存关系的 成对的,可以对应列表 。同时字典的查询的速度非常快
7.集合:{1,2,3}只能储存数据
8.字符串的操作
8.1 字符串的首字母大写
a ='wangjiade'
a1 = a.capitalize()
print(a1)
输出 a1 = Wangjiade
8.1.2 字符串全部大写
a ='wangjiade'
a1 = a.upper()
print(a1)
输出 a1 = WANGJIADE
8.1.3 字符串全部小写
a ='wangjIade'
a1 = a.lower()
print(a1)
输出a1 = wangjiade
应用实例 :输入大小写
zm = 'CAcs4'
you_input =input('请输出验证码,不区分大小写')
if zm.upper() == you_input.upper():
print('success')
else:
print('fall')
PS zm.input.lower 也可以!
8.1.4 大小写翻转
a ='JohnNoenscc'
a1 = a.swapcase()
print(a1)
输出 a1 = jOHNnOENSCC
8.1.5 各个首字母大写
a ='john tom jerry mary'
a1 = a.title()
print(a1)
PS 以空格个开的 中间也可以是特殊字符 !@#¥%……12
输出:John Tom Jerry Mary
8.1.6 居中
a ='jsdasdQy'
a1 = a.center(20)
print(a1)
PS 20的开头的距离 center(中间必须打数字。‘填充物’)
8.1.7 补8个位 tab
a ='jsda\tsdQy'
a1 = a.expandtabs()
print(a1)
jsda(四个空格 前面有四位了)sdQy
8.2 公用长度
a = 'ghfsdjafdasfq34123sad飞'
l = len(a)
print(l)
站位数字 中文也算
8.3 寻找以什么为开头
#以什么开头结尾 endswith
# s = 'alexWUsir'
# s7 =s.startswith('alex')
# s71 = s.startswith('e',2,5)
# print(s71)
#输出 T exW
8.4 find 通过元素 输出索引 找不到返回-1
index 通过元素找所以 找不到就报错
s = 'horeismy'
s1 = s.find('s')
print(s1)
8.5 strip 默认删除前后的空格
strip(‘里面打入什么 就是删掉什么 什么都不加 就是默认删除空格’) 但是只删除前后 中间不删除
s = ' *a%lexWUsi* r%'
s91= s.strip(' %*')
print(s91)
输出为a%lexWUsi* r
PS :如果要想从左删除就是rstrip 从右删除就是lstrip
8.6 count 查询 单个字符
有就输出对应个数 没有就输出0个 可以组合查询
s = 'alexaa wusirl'
s10 = s.count('al')
print(s10)
输出为1
8.7 split 分隔切割
默认以空格为切分 split(中间写入什么就以什么来分割)
# s = ';alex;wusir;taibai'
# l = s.split(';')
# print(l)
PS 同时注意以什么为分隔 那么输出时候 分隔的东西会消失 比如上面的;输出来就没有了
8.8format 格式化输出 和%s一样
# s = '我叫{},今年{},爱好{},再说一下我叫{}'.format('TOM',22,'girl','tom')
# print(s)
# name = input('请输入名字:')
# s = '我叫{0},今年{1},爱好{2},再说一下我叫{0}'.format(name,36,'girl')
# print(s)
# name = input('请输入名字:')
# s = '我叫{name},今年{age},爱好{hobby},再说一下我叫{name}'.format(age=18,name=name,hobby='girl')
# print(s)
PS 注意要按照顺序 {}=%s的%
8.9 字符的替换 replace
s = '我喜欢隔壁的大哥,隔壁的大哥也喜欢我'
s11 = s.replace('大哥','老王',2)
print(s11)
最后的数字是 替换的次数
8.10 is
name = 'jijiji888'
print(name.isalnum())#数字和字母
print(name.isalpha())#只能有字母
print(name.isdigit())#只能有数字
PYTHON -- 基础3的更多相关文章
- 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模块的一些方法如下: 得到 ...
- python基础之编码问题
python基础之编码问题 本节内容 字符串编码问题由来 字符串编码解决方案 1.字符串编码问题由来 由于字符串编码是从ascii--->unicode--->utf-8(utf-16和u ...
随机推荐
- css遮罩蒙版效果 分栏效果
mask遮罩蒙版效果 来看一下效果图: 这是两张原图: 遮罩层图像 注意,白色区域为透明状态 要展示的图像 使用mask之后产生的效果图 首先来解释一下遮罩.蒙版.和PS中的蒙版.Flash中 ...
- 理解JS深拷贝
前言: JS的拷贝(copy),之所以分为深浅两种形式,是因为JS变量的类型存在premitive(字面量)与reference(引用)两种区别.当然,大多数编程语言都存在这种特性. 众所周知,内存包 ...
- 蓝桥杯近三年决赛题之一(15年B组)
自己计时4小时做了试试,发现只用了2个小时多一点,第二题和第六题实在没办法,不会做,第五题用了暴力(过不了多少数据),其他三题在网上看了看 应该都是对的,下面放上试题及答案. 1. 标题:积分之迷 小 ...
- 关于MySQL数据库的安装和卸载
0.官网下载 https://www.mysql.com/ 选择需要的版本下载 两种安装方式,选择需要的安装包 下载 1.MySQL 5.6 for Windows 解压缩版配置安装 https:// ...
- PL/SQL Block中对单引号进行转义
可以使用如下的方式: STR := q'[ CREATE TABLE TNAME AS SELECT ... FROM INPUT_TABLE IP WHERE ((IP.DATE_FIELD = T ...
- 【转】OJ提交时G++与C++的区别
关于G++ 首先更正一个概念,C++是一门计算机编程语言,G++不是语言,是一款编译器中编译C++程序的命令而已.那么他们之间的区别是什么? 在提交题目中的语言选项里,G++和C++都代表编译的方式. ...
- git clone git@github.com:snuglove/ 报错
[root@qc_centos7_5 ~]# git clone git@github.com:snuglove/Job-hunting-related.git Cloning into 'Job-h ...
- 发现一个新的注入 代码 eval
下面这句代码,就是一段恶意的代码,通过form POST 提交数据即可生成脚本文件. eval('?>' . file_get_contents('php://input'));
- Gem install Mysql2的问题
运行 ‘bundle install’ 或者 ‘gem install mysql2′ 遇到如下错误 > gem install mysql2 ERROR: Error installing m ...
- 使用ReentrantLock同步,经典银行账户问题
1.新建Account类,使用ReentrantLock同步增加和减少金额方法. package com.xkzhangsan.reentrantlockpack.bank; import java. ...