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!的更多相关文章

  1. python从入门到精通之30天快速学python视频教程

    点击了解更多Python课程>>> python从入门到精通之30天快速学python视频教程 课程目录: python入门教程-1-Python编程语言历史及特性.mkv pyth ...

  2. Python从入门到精通之eighth!

    函数式编程与内置函数 函数作用域: def test1(): print('in the test1') def test(): print('in the test') return test1() ...

  3. Python从入门到精通之Sixth!

    补充:enumerate 函数用于遍历序列(元组tuple.列表list.字典dict)中的元素以及它们的下标: >>> for i,j in enumerate(('a','b', ...

  4. Python从入门到精通之Forth!

    Python基本数据类型之列表 补充:range()方法 python2: range   立即创建 xrange  for循环的时候才一个一个创建 Python3: range     for循环的 ...

  5. Python从入门到精通之Second!

    初识Python基础! -基础     -扩展名可以是任意的,但是导入模块时,如果不是.py文件就会报错. -两种执行方式      1.python解释器       文件名.py 文件路径 -Li ...

  6. Python从入门到精通之First!

    Python的种类 Cpython Python的官方版本,使用C语言实现,使用最为广泛,CPython实现会将源文件(py文件)转换成字节码文件(pyc文件),然后运行在Python虚拟机上. Jy ...

  7. Python从入门到精通之环境搭建

    本章内容: Windows系统环境搭建 Linux系统环境搭建 Mac OS系统环境搭建 一.下载python安装包 下载地址:https://www.python.org/downloads/ 二. ...

  8. Python从入门到精通之Seventh!

    函数浅析:可以减少代码重用,保持一致性,可扩展性,易维护性. 定义方法:def 函数名(形参):     '''功能注释'''      代码块 打印函数名时,会出现函数的内存地址.两个函数名相同时, ...

  9. Python从入门到精通之Fifth!

    字典  类名:dict   字典是无序的. 字典的创建  info = {"k1":{1:"abc",[1,2,3]},"k2":True} ...

随机推荐

  1. 逆变(contravariant)与协变(covariant):只能用在接口和委托上面

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...

  2. Apple watch ,小米微信通知

    Applewatch怎么显示微信通知?iWatch显示微信消息通知设置方法.大家都知道Applewatch上收到微信消息,iWatch是不会显示通知的,需要用户自行设置才行.下面小编来教大家如何设置A ...

  3. (项目六)Mha-Atlas-MySQL高可用方案实践

    mha-mysql环境准备: 三台虚拟机,都安装了mysql,都关闭防火墙和selinux,同时在每台虚拟机上都做映射 软件包 1) mha管理节点安装包: mha4mysql-manager-0.5 ...

  4. PHP 构造方法 __construct()和PHP 析构方法 __destruct()

    PHP 构造方法 __construct() 允许在实例化一个类之前先执行构造方法. 构造方法 构造方法是类中的一个特殊方法.当使用 new 操作符创建一个类的实例时,构造方法将会自动调用,其名称必须 ...

  5. Java Web解决跨域请求

    要知道跨域请求就要先了解同源策略,那么什么是同源?什么是不同源?简单来说就是,如果两个资源,包括HTML页面.JavaScript脚本.css样式,对应的协议.域名和端口完全相同,那么这两个资源就是同 ...

  6. X1226 和 AT24C16 地址冲突问题

    这几天开发eeprom功能的时候,利用单片机的I2C接口访问AT24C16.遇到一个问题: 发现AT24C16的最后一页写不进去.表现为写任何值后,再读取都是0. 经过几天的排查,发现是应为在I2C总 ...

  7. Unity2018.3全新Prefab预制件系统深入介绍视频教程+PPT+Demo源码

    Unity在2018.3推出了重新设计的Prefab预制件系统.这一全新的设计终于为一个长达十年的问题画上了完美的句号, 这个问题就是:“什么时候Unity可以提供嵌套式的预制件系统,俗称Nested ...

  8. Python开发【第十篇】:Redis

    缓存数据库介绍 NoSQL(Not Only SQL),即"不仅仅是SQL",泛指非关系型的数据库.随着互联网web2.0网站的兴起,传统的关系数据库在应对web2.0网站,特别是 ...

  9. CentOS7+CDH5.14.0安装全流程记录,图文详解全程实测-8CDH5安装和集群配置

    Cloudera Manager Server和Agent都启动以后,就可以进行CDH5的安装配置了.      准备文件 从 http://archive.cloudera.com/cdh5/par ...

  10. Mariadb主从复制

    前戏: mysql的基本命令复习 .启动mysql systemctl start mariadb .linux客户端连接自己 mysql -uroot -p -h 127.0.0.1 .远程链接my ...