Python从入门到精通之Third!
Python运算符
算数运算符:+ - * / % // **
比较运算符:== > < >= 大于等于 <= 小于等于 != 不等于 <> 不等于
逻辑运算符:not 、 and 、 or (布尔值:True 真 False: 假)
in not in 判断某个东西是否在某个里面 # 注释符 多个字符叫做字符串,单个字符叫做字符。
赋值运算符: +=、-=、%=、*=、/=、//=、**=
not False====>>True (有括号先计算括号里的)
name = "张三1"
if "张1" in name:
print('ok')
else:
print('error') #输出error,只有连续的或者单个的是子序列。
name = "李四2"
if "李2" not in name:
print("not in ")
else:
print("in")
基本数据类型
数值型 Python2中 :int 整型 long 长整型
Python3中 所有数字都是整型,没有长整型
数值的魔法:
a1 = 123 #type(a1)查看a1的数据类型
b1 = 456
r = b1.bit_length() #当前数字的二进制,至少用几位来表示
- int 将字符串转换为数字
a = ""
b = int(a)
b = b + 1000
a1 = ""
int(a1,base=n) #将字符串以n进制的形式转换
字符串型 : str的必会魔法:7个基本魔法 5个灰魔法 1个深灰魔法
7个基本魔法: join upper lower replace find strip split
深灰魔法:字符串一旦创建不可修改,一旦修改或者拼接,都会造成重新生成字符串
test = "alex" v = test.capitalize() #首字母大写
v = test.casefold() # 所有字母变成小写,casefold更牛逼,可以把很多未知的变成小写 v = test.center(width,"*") #作用:将内容设置剧中,参数一设置宽度,参数二设置除内容外的字符,可以为空。
eg:test.center(10,@)
=====>>@@@alex@@@ v = test.count('子序列',起始位置) #统计子序列在字符串中出现的次数
eg:test.count('l',2)
=====>>1 v = test.endswith('字符序列') #是否以字符序列结尾的
eg:test.endwith("ex")
=====>>True v = test.startswith('字符序列') #是否以字符序列开头的
eg:test.startswith("ae")
=====>>False v = test.expandtabs([tabsize=8]) #方法把字符串中的 tab 符号('\t')转为空格,tab 符号('\t')默认的空格数是 8。
eg:test = "ale\tx" #注意:先看tabsize的值,根据指定长度一个个判断,用空格补齐指定长度
v = test.expandtabs(6)
print(v,len(v))
=====>>ale x 7 v = test.find(str, beg,end) #检测字符串中是否包含子字符串 str ,如果指定 beg(开始)
和 end(结束) 范围,则检查是否包含在指定范围内,如果包含子字符串返回从第一个开始的索引值,否则返回-1。 v = test.format('值1','值2') #格式化,将一个字符串中的占位符替换为指定的值
eg:test = 'i am {name},age {a}'
v = test.format(name='alex',a=19)
=====>>i am alex, age 19 v = test.format_map({"name":'alex',"a":19}) #与上format作用相同,但书写方式不同,和字典相同。 v = test.index() #找到其索引,未找到则报错。
eg:test = "alexalex"
v = test.index('') #报错
v = test.isalnum() #判断字符串中是否只包含数字和字母
eg:test = "fafd_123"
v=test.isalnum()
======>>False v = test.isalpha() #判断是否是字母 v = test.isdecimal() #判断是否是数字,比较常用
v = test.isdigit() #判断是否是纯数字
v = test.isnumeric() #可以判断是否是数字,支持中文数字,可用于判断标题 字母的转换与判断
v = test.islower() #判断字符串是不是全部小写
v = test.lower() #把字母转换为小写
v = test.isupper() #判断字符串是不是都是大写
v = test.upper() #把字母转换为大写
v = test.swapcase() #大小写转换 v = test.isidentifier() #是否是由字母,数字,下划线,标识符(def、class)组成 eg:test = "alexalex"
v = test.isidentifier()
======>> True v = test.isprintable() #是否存在不可显示的字符,若存在则为False。例如:\t、\n v = test.isspace() #判断是否全部是空格,空串不包含空格 v = test.title() #把字符串转为标题类型
v = test.istitle() #判断是不是标题,所有首字母大写 # 字符串的填充
v = ''.join()
eg:a = 'fasaff'
v = '_'.join(a) #将每一字母之间都添加上下划线
======>> f_a_s_a_f_f
v = test.ljust(长度,"填充符") #从左侧向右填充,长度是整个字符串长度 abc@@@@
v = test.rjust(长度,"填充符") #从右侧向左填充,长度是整个字符串长度 @@@@abc
v = test.zfill(长度) #只能填充0,可用rjust代替 #空格的增删 注意:可去除\t、\n
还适用于字符删除,匹配子序列中与字符串左或右侧相对应的,先匹配字符多的
v = lstrip() #删除左侧空格
v = rstrip() #删除右侧空格
v = strip() #删除两侧空格
eg:test = 'abcde'
v=test.lstrip('deacb')
=======>> cde #maketrans和translate配合使用,实现字符间的转换
v = test.maketrans("","aeiou") #把字符1替换为a 2替换为e
eg:test = "test"
m = test.maketrans("ts","")
new_v = test.translate(m)
========>> 1e2t #按照一定规则进行分割
#partition与split的区别是:partition会把要分割的字符分成一份,而split不会
v = test.partition(分隔符'a') #把字符串分隔成3份,找到第一个a,左侧一份,a一份,a右侧一份
v = test.rpartition(分隔符)
v = test.split('a') #把整个字符串中所有的a都进行分割,但是a本身不会被匹配
v = test.rsplit(分隔符)
eg:test = "asdfadreafdgd"
v = test.split('d',2) #后面可指定两个参数,第二个参数是为了匹配制定次数的
=======>> ['as','fa','reafdgd']
v = test.splitlines(True/False) #根据true或false,是否保留换行符
eg:test = "fas\nfsdaf\nfd"
v = test.splitlines() #根据换行符进行分割
=======>> ['fas','fsdaf','fd'] #字符的替换
test = 'alexalexalex'
v = test.replace("ex","bbb",2) #把ex替换成bbb,只替换前两个
print(v)
==========>> albbbalbbbalex
字符串的灰魔法:
#索引,下标,获取字符串中的某一个字符
test = "abcd"
v = test[2]
print(v)
==========>> c #切片
test = "abcd"
v = test[0:-1] #从下标0到最后,但不包含最后一个
pirnt(v)
==========>> abcd #获取字符串长度 注意:当获取列表的元素个数时,获取的是个数
v = len("abcde")
print(v)
=========>> 5 #######例题######### test = '妹子有种冲我来'
index = 0
while index<len(test):
v = test[index]
print(v)
index+=1
print("==========")
=========>>妹
子
有
种
冲
我
来
========== #for循环 注意:for循环可用于列表、字典等等# for 变量名 in 字符串: 代码块 #帮助创建连续的数字,通过设置步长来设定不连续的数字
v = range(0,100,5) #大于等于0小于等于100的步长为5的数
for item in v:
print(item)
#例题:将文字对应的索引打印出来
test = input("<<<<<")
l = len(test)
r = range(0,l)
for item in r:
print(item,test[item])
Python从入门到精通之Third!的更多相关文章
- python从入门到精通之30天快速学python视频教程
点击了解更多Python课程>>> python从入门到精通之30天快速学python视频教程 课程目录: python入门教程-1-Python编程语言历史及特性.mkv pyth ...
- Python从入门到精通之eighth!
函数式编程与内置函数 函数作用域: def test1(): print('in the test1') def test(): print('in the test') return test1() ...
- Python从入门到精通之Sixth!
补充:enumerate 函数用于遍历序列(元组tuple.列表list.字典dict)中的元素以及它们的下标: >>> for i,j in enumerate(('a','b', ...
- Python从入门到精通之Forth!
Python基本数据类型之列表 补充:range()方法 python2: range 立即创建 xrange for循环的时候才一个一个创建 Python3: range for循环的 ...
- Python从入门到精通之Second!
初识Python基础! -基础 -扩展名可以是任意的,但是导入模块时,如果不是.py文件就会报错. -两种执行方式 1.python解释器 文件名.py 文件路径 -Li ...
- Python从入门到精通之First!
Python的种类 Cpython Python的官方版本,使用C语言实现,使用最为广泛,CPython实现会将源文件(py文件)转换成字节码文件(pyc文件),然后运行在Python虚拟机上. Jy ...
- Python从入门到精通之环境搭建
本章内容: Windows系统环境搭建 Linux系统环境搭建 Mac OS系统环境搭建 一.下载python安装包 下载地址:https://www.python.org/downloads/ 二. ...
- Python从入门到精通之Seventh!
函数浅析:可以减少代码重用,保持一致性,可扩展性,易维护性. 定义方法:def 函数名(形参): '''功能注释''' 代码块 打印函数名时,会出现函数的内存地址.两个函数名相同时, ...
- Python从入门到精通之Fifth!
字典 类名:dict 字典是无序的. 字典的创建 info = {"k1":{1:"abc",[1,2,3]},"k2":True} ...
随机推荐
- python之路:变量与变量基本操作(老王版)
python开发之路:变量与变量基本操作 你是一个师范大学的优秀毕业生,现在在某某小学工作. 你想:判作业真的很累,隔壁老王现在天天玩<蓝月传奇>,银行里存满了钱.唉,每节课1个小时,每个 ...
- Java JDK动态代理解析
动态代理虽不常自己实现,但在Spring或MyBatis中都有重要应用.动态代理的意义在于生成一个占位(又称代理对象),来代理真实对象,从而控制真实对象的访问.Spring常JDK和CGLIB动态代理 ...
- Javascript中用来实现继承的几种方式
一.原型链继承 原理:修改子类型的原型,使其指向父类型的实例: 缺点: 1,不能以字面量方式在子类型的原型上添加新方法:这回重新改写子类型的原型: 2 创建子类型的实例时无法向父类型的构造函数传参. ...
- 浏览器端时间循环与nodejs端时间循环的不同之处(宏任务与微任务)
浏览器端与node端都有宏任务与微任务的概念.字面意思上看宏任务就是耗时间比较长的任务,而微任务是耗时短的任务. 在浏览器端,宏任务包括setTimeout,setInterval,微任务则包括Pro ...
- spark报错:warn util.utils::service 'sparkUI' can not bind on part 4040.Attempting port 4041.
转载自:https://blog.csdn.net/weixin_41629917/article/details/83190258
- 我的vimrc设置
vim一个文件 :e version :editor version 查看.vimrc所在的系统和用户文件 vim ~/.vimrc " 行号 set number " 语法高亮( ...
- logging-----日志模块
import logging #creat logger 第一步,创建一个记录器 logging_name = 'test' logger = logging.getLogger(logging_na ...
- <Dare To Dream> 第四次作业:基于原型的团队项目需求调研与分析
任务1:实施团队项目软件用户调研活动. (1)真实的用户调研对象:生科院大三学生 (2)利用实验七所开发的软件原型:网站原型链接 (3)要有除原型法之外的其他需求获取手段: 访谈法 开会研讨法 (4) ...
- Linux实操篇
一:用户管理.群组管理 增: 1.指定群组添加账户: groupadd test 创建test用户组useradd -g test(用户组) xiaoming(用户名) ---- 创建us ...
- for循环 && for-each
Effective Java 第46条for-each循环优先于传统for循环 问题: 使用for循环来遍历集合或者是数组可以借助迭代器和索引变量.但是,如果出现循环嵌套的时候很容易引起混乱. 例如: ...