Python基础备份记录(二)

#!/usr/localbin/python3

# -*- coding: utf-8 -*-

# https://www.cnblogs.com/wupeiqi/articles/5444685.html

# 结果是值的分成下面两类

# 算数运算符 赋值运算符

# ========================

# 结果是布尔值的分成下面三类

# 比较运算符 逻辑运算符 成员运算符

# 基本数据类型

## 数字

## 字符串

## 布尔值

# python3 只有int 整形之说

# int str list tuple dict bool

# int --->? 数字 所有的功能,都放在int里

"""

字符串转换为数字类型

进制转换

num ="0011"

v = int(num, base=16)

print(v)

age = 5

r = age.bit_length()

print(r)

bit_length 当前数字的二进制至少用几位来表示

所有变小写,只是casefold更牛逼,他有很多的未知对应关系

v = test.center(20)

print(v)

表示有20个位置并将内容居中,后面没有就是默认是空白

v = test.center(20,"*") 后面有* 就是使用*填充

endswith startswith 开头和结束

encode decode? 编码和解码

find 从前往后找

format

test = 'i am {name}'

print(test)

v = test.format(name='root')

print(v)

index 索引的位置

isalnum 判断是不是只包含字母和数字 ,都是数字也可以,都是字母也可以

isupper

"""

# capitalize 是将首字母变大

n = 'root'

print(n)

v = n.capitalize()

print(v)

print('===========capitalize==========')

# center:内容居中,width:总长度, fillchar:空白处需要填充的内容,不填默认是空白

#? def center(self, width, fillchar=None):

n = 'cntf'

print(n)

v = n.center(10)

v = n.center(30,"-")

print(v)

print('==========center===========')

# count 子序列个数,判断有多少个字符

# 例如:str.count(sub, start=0,end=len(string))

# 函数:def count(self, sub, start=None, end=None):

# sub -- 搜索的子字符串

# start -- 字符串开始搜索的位置,默认为第一个字符串,第一个字符索引值为0

# end -- 字符串中结束搜索的位置,

n = 'this is string test cntf ... hehe'

print(n)

v = n.count('he', 0, 50)

print(v)

print('==========count===========')

# endswith 是否以....结束....

# def endswith(self, suffix, start=None, end=None):

n = 'this is cntf test python3'

print(n)

# v = n.endswith('on3')

v = n.endswith('tf', 0, 12)

print(v)

print('==========endswith===========')

# expandtabs 将tab转换成空格,默认一个tab转换成8个空格

# def expandtabs(self, tabsize=None):

# 默认情况下tabsize不写,就是将tab转换成8个空格,如果写成2,就是转换成2个空格

n = 'zhege shi ceshi zhidaobu cntf'

print(n)

v = n.expandtabs(2)

print(v)

print('==========expandtabs===========')

# find? 寻找子序列位置,如果没有找到,就返回-1

# def find(self, sub, start=None, end=None):

n = 'ceshi find zhege danci word cntf'

print(n)

# v = n.find('danci')

v = n.find('fuck')

print(v)

print('==========find===========')

# 上述显示的结果是17,表示从第一个字符开始从0开始数,第17个字符是符合要求的

# 上述如果没有找到fuck那么就是显示-1

# format 字符串格式化,动态参数

# def format(*args, **kwargs): # known special case of str.format

# 通过位置来填充字符串

n = 'hello {0} I will fucking the {1}'

print(n)

v = n.format('objk', 'world')

print(v)

print('==========format-位置测试===========')

n1 = 'hello {} I will fucking the {}'

print(n1)

v1 = n1.format('ojbk','world')

print(v1)

print('==========format-不写位置测试===========')

n2 = 'hello {0} I will fucking the {1} ... and now this is a programe language--- {1}'

print(n2)

v2 = n2.format('ojbk', 'world')

print(v2)

print('==========format-同一个参数可以填充多次===========')

# 同一个参数可以填充多次,这个是format的先进地方

# 通过key来填充

jbkb = 'world'

name = 'python3'

print('hello, {jbkb}, I will fuck {name}')

# 开始format

print('hello, {jbkb}, I will fuck {name}'.format(jbkb = jbkb, name = name))

print('==========format-通过key来填充===========')

# 通过列表填充

list = ['world', 'python3']

print('hello {names[0]}? I will fuck {names[1]}')

# 开始format

print('hello {names[0]}? I will fuck {names[1]}'.format(names=list))

print('==========format-通过列表来填充===========')

# 通过字典填充

dict = {'obj':'world', 'name':'python3'}

print(dict)

print('hello {names[obj]} I will fucking {names[name]}'.format(names=dict))

print('==========format-通过字典来填充===========')

print('***********format-已经测试完毕************')

# index 子序列位置,如果没有找到,就报错

# def index(self, sub, start=None, end=None):

n = 'that if fuck the world'

print(n)

v = n.index('fuck')

print(v)

print('==========index测试完毕===========')

# 在字符串中查找fuck的起始位置,这里执行结果是8,表示从左到右从0开始数起第8个位置

# isalnum 是否是字母和数字,或者都是字母,或者都是数字

# def isalnum(self):?

n1 = 'cntf888'

n2 = 'cntf'

n3 = '9988899223'

n4 = 'cntf_fuck998'

print(n1)

print(n2)

print(n3)

# 开始判断是否是数字字母或者其中一个是的

v1 = n1.isalnum()

print(v1)

v2 = n2.isalnum()

print(v2)

v3 = n3.isalnum()

print(v3)

v4 = n4.isalnum()

print(v4)

print('==========isalnum测试完毕===========')

# isalpha 是否是字母

# def isalpha(self):

n1 = 'cntf'

n2 = '888666'

print(n1)

v1 = n1.isalpha()

print(v1)

v2 = n2.isalpha()

print(v2)

print('==========isalpha测试完毕===========')

# isdigit 是否是数字

# def isdigit(self):

n1 = 'cntf'

n2 = '888999'

print(n1)

v1 = n1.isdigit()

print(v1)

v2 = n2.isdigit()

print(v2)

print('==========isdigit测试完毕===========')

# islower 是否是小写

# def islower(self):

n1 = 'cnft'

n2 = 'CNTf'

print(n1)

print(n2)

v1 = n1.islower()

print(v1)

v2 = n2.islower()

print(v2)

print('==========islower测试完毕===========')

# isspace 是否含有空格

# def isspace(self):

n1 = 'cntf'

n2 = '? '

print(n1)

print(n2)

v1 = n1.isspace()

print(v1)

v2 = n2.isspace()

print(v2)

print('==========isspace测试完毕===========')

# istitle 判断字符串中所有的单词拼写首字母是否为大写,且其他字母为小写

# def istitle(self):

n1 = 'This Is String Da Xue'

n2 = 'This is string test shifou shi daxie'

print(n1)

print(n2)

v1 = n1.istitle()

print(v1)

v2 = n2.istitle()

print(v2)

print('==========istitle测试完毕===========')

# isupper 判断字符串中所有的字母是否是大写

# def isupper(self):

n1 = 'THIS IS TEST ALL ZIMU SHIFOU SHI DAXUE'

n2 = 'THIS is all zimu no daxue'

print(n1)

print(n2)

v1 = n1.isupper()

print(v1)

v2 = n2.isupper()

print(v2)

print('==========isupper测试完毕===========')

# join 将序列中的元素以指定的字符连接生成一个新的字符串

n1 = 'fuck'

n2 = '---'

print(n1.join(n2))

str = "-"

seq = ("a", "b", "c")

print(str.join(seq))

print('==========join测试完毕===========')

# ljust 内容左对齐,右侧填充

# def ljust(self, width, fillchar=None):

n1 = 'cntf that is fucking '

print(n1)

v1 = n1.ljust(30, '2')

print(v1)

print('==========ljust测试完毕===========')

# lower 变成小写

# def lower(self):

n = 'cntFFUCKingheHe'

print(n)

v = n.lower()

print(v)

print('==========lower测试完毕===========')

# lstrip 移除最侧空白

# def lstrip(self, chars=None):

n = '? ? ? d shiting cntf FUK HEIHEI'

print(n)

v = n.lstrip()

print(v)

print('==========lstrip测试完毕===========')

# partition 分割,前,中,后三部分

# def partition(self, sep):

# 根据指定的分隔符将字符串进行分割

n = 'www.baidu.com'

print(n)

v = n.partition('bai')

print(v)

print('==========partition测试完毕===========')

# 执行的结果就是根据前,中,后来看

# replace 替换

# def replace(self, old, new, count=None):

n = 'www.baidu.com.net'

print(n)

v = n.replace('www','shit')

print(v)

v1 = n.replace('.','*')

v2 = n.replace('.','*',2)

print(v1)

print(v2)

print('==========replace测试完毕===========')

# old 是指将要被替换的字符串

# new 是指被替换后的新字符串

# max 可选字符串,表示替换不超过多少次

# rfind 返回字符串最后一次出现的位置,如果没有匹配则返回-1

# def rfind(self, sub, start=None, end=None):

n1 = 'this is ceshi rfingd fucking cntf'

n2 = 'cn'

print(n1)

print(n2)

v1 = n1.rfind('is', 0, 5)

v4 = n1.rfind('is', 5, 0)

v2 = n1.rfind('is')

v3 = n1.find('is')

print(v1)

print(v2)

print(v3)

print(v4)

print('==========rfind测试完毕===========')

# find 是从字符串左边开始查询子字符串匹配到的第一个索引

# rfind 默认情况下是从字符串右边开始查询子字符串匹配到的第一个索引

# 当然如果rfind已经指定了开始和结束的位置那么就是根据指定的位置开始从左至右

# rindex 子字符串最后一次出现在字符串中的索引位置,只不过如果子字符串不在字符串中会报一个异常

# def rindex(self, sub, start=None, end=None):?

n1 = 'this is ceshi rfingd fucking cntf'

print(n1)

v1 = n1.rindex('is')

# v2 = n1.rindex('is', 10)

print(v1)

# print(v2)

print('==========rindex测试完毕===========')

# 默认是从左向右开始查找匹配,如果指定了起始位置那么就从起始位置开始查找匹配

# rjust 返回一个原字符串右对齐,并使用空格填充

# def rjust(self, width, fillchar=None):?

n1 = 'this is fucking cntf'

print(n1)

v1 = n1.rjust(30)

v2 = n1.rjust(30, '*')

print(v1)

print(v2)

print('==========rjust测试完毕===========')

# rpartition 从右向左边开始以前,中,后分割

# def rpartition(self, sep):?

n = 'www.baidu.com.net'

print(n)

v = n.rpartition("du")

print(v)

print('==========rpartition测试完毕===========')

# rsplit 从左到右开始指定分隔符对字符串进行分割并返回一个列表,默认分隔符为所有的空字符,包括空格,换行(\n),制表符(\t)

# def rsplit(self, sep=None, maxsplit=None):?

# sep 可选参数,指定分隔符,默认为所有的空字符,包括换行符和制表符

# count 可选参数,分割次数,默认为分隔符在字符串中出现的总次数

n1 = 'this is ceshi rsplit fucking cntf'

print(n1)

v1 = n1.rsplit()

print(v1)

v2 = n1.rsplit('i')

print(v2)

v3 = n1.rsplit('i', 1)

print(v3)

print('==========rsplit测试完毕===========')

# rstrip 返回删除字符串末尾指定的字符

# def rstrip(self, chars=None):?

n1 = " ***********this fucking cntf************"

n2 = ' ***********this fucking cntf************? '

print(n1)

v1 = n1.rstrip()

print(v1)

v2 = n2.rstrip('*')

print(v2)

print('==========rstrip测试完毕===========')

# split 分割, maxsplit 最多分割几次

# def split(self, sep=None, maxsplit=None):?

n1 = 'this is ceshi fenge fucking cntf'

print(n1)

v1 = n1.split()

print(v1)

v2 = n1.split('e')

print(v2)

v3 = n1.split('e', 1)

print(v3)

# 真的字符串进行分割,默认是以空白符,空格进行分割

# sep 是指定以什么作为分割符

# maxsplit 指定最大分割几次

print('==========split测试完毕===========')

# splitlines 根据换行分割

# def splitlines(self, keepends=False):?

n1 = 'this is ceshi fenge fucking cntf'

print(n1)

v1 = n1.splitlines()

print(v1)

print('==========splitlines测试完毕===========')

# startswith 检查字符串是否是以指定的子字符开头,如果是返回True,如果不是返回False

# 如果参数beg和end指定值,则在指定范围内检查

# def startswith(self, prefix, start=None, end=None):?

n = 'this is test start swith hehe example wowow? ok ...!!!'

print(n)

v = n.startswith('this')

print(v)

v1 = n.startswith('is')

print(v1)

v2 = n.startswith('test', 8)

print(v2)

print('==========startswith测试完毕===========')

# strip 移除两段空白,或者指定的字符串

# def strip(self, chars=None):

n1 = '00000000009988cntf-shiting889900000000000000'

print(n1)

v1 = n1.strip()

print(v1)

# 默认不指定就是空白符

v2 = n1.strip('0')

print(v2)

n2 = '? ? ? ? shiting and fucking cntf? ? ? ? ? '

print(n2)

v4 = n2.strip()

print(v4)

print('==========strip测试完毕===========')

# swapcase 大写变小写,小写变大写

# def swapcase(self):

n1 = 'CNTF'

n2 = 'cntf'

n3 = 'CNtf'

print(n1)

print(n2)

print(n3)

v1 = n1.swapcase()

print(v1)

v2 = n2.swapcase()

print(v2)

v3 = n3.swapcase()

print(v3)

print('==========swapcase测试完毕===========')

# title 所有单词都是以大写开头

# def title(self):

n = 'this is test the titles cntf'

print(n)?

v = n.title()

print(v)

print('==========title测试完毕===========')

# translate 需要转换的字符

# 转换,需要先做一个对应表,最后一个表示删除字符集合

# def translate(self, table, deletechars=None):?

# from string import maketrans? # Required to call maketrans function.

# intab = "aeiou"

# outtab = "12345"

# trantab = maketrans(intab, outtab)

# str = "this is string example....wow!!!";

# print str.translate(trantab, 'xm');

# print('==========translate测试完毕===========')

# upper 将小写字母变成大写

# def upper(self):

n = 'fucking'

print(n)

v = n.upper()

print(v)

print('==========upper测试完毕===========')

# zfill 方法返回指定长度的字符串,原字符串右对齐,前面填充0

# def zfill(self, width):

n1 = 'shit'

print(n1)

v1 = n1.zfill(60)

print(v1)

print('==========zfill测试完毕===========')

# expandtabs 根据制表符进行匹配

test = '1234567\t89'

print(test)

v = test.expandtabs(6)

print(v,len(v))

# expandtabs(6)表示针对字符每6个字符为一组,如果找到每组中含有制表符\t

# 那么算出这个有制表符的组中除了对于的字符之外的位置用空格填充

# 实际用途中可以制作表格

# isdecimal isdigit

# 判断是否为数字,isdigit牛逼点 isnumeric更牛逼

n = "⑥"

# v1 = n.isdecimal()

v2 = n.isdigit()

v3 = n.isnumeric()

print(v1,v2,v3)

# Python3正常执行

# isidentifier()

# a = "def"

# v = a.isidentifier()

# print(v)

# isprintable 是否可以打印 例如\n \t 是不可以打印的

# 需要记住经常使用的 join split find strip upper lower replace

test = input(">>>")

for item in range(0, len(test)):

print(item, test[item])

最后编辑于
?著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 214,029评论 6 493
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,238评论 3 388
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事?!?“怎么了?”我有些...
    开封第一讲书人阅读 159,576评论 0 349
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,214评论 1 287
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,324评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,392评论 1 292
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,416评论 3 412
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,196评论 0 269
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,631评论 1 306
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,919评论 2 328
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,090评论 1 342
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,767评论 4 337
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,410评论 3 322
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,090评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,328评论 1 267
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,952评论 2 365
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,979评论 2 351

推荐阅读更多精彩内容