day10-11-python基础之字符串
1.开发工具
python开发IDE: pycharm、eclipse
# 专业版
# 不要汉化
2.运算符
结果是值
算数运算
a = 10 * 10
赋值运算
a = a + 1 a+=1
结果是布尔值
比较运算
a = 1 > 5
逻辑运算
a = 1>6 or 1==1
成员运算
a = "蚊" in "郑建文"
3.基本数据类型
a.数字 int ,所有的功能,都放在int里
a1: int(object) 将字符串转换为数字
#!/usr/bin/env python
# -*- coding:utf8 -*-
#int
a = ""
print(type(a), a) b = int(a)
print(type(b), b) num = ""
v = int(num, base=16)
print(v)
a2:bit_lenght(self) 当前数字的二进制,至少用n位表示
#!/usr/bin/env python
# -*- coding:utf8 -*-
#int
age = 5
r = age.bit_length()
print(r)
b.字符串 str
b1 capitalize() 首字母大写
#!/usr/bin/env python
# -*- coding:utf8 -*-
#str
# 首字母大写 capitalize()
test = "aLex"
v = test.capitalize()
print(v)
b2 casefold() 所有变小写 包括特殊字符 lower() 所有英文字母变小写
#!/usr/bin/env python
# -*- coding:utf8 -*-
#str
# 所有变小写 casefold() lower()
test = "ShiQIanYu"
v1 = test.casefold()
print(v1)
v2 = test.lower()
print(v2)
b3 center(width, fillchar=None) width 代表总长度 fillchar 空白未知填充,一个字符,可有可无 两边填充
#!/usr/bin/env python
# -*- coding:utf8 -*-
#str
test = 'sqy'
v = test.center(20,"*")
print(v)
b31 ljust(width, fillchar=None) width 代表总长度 fillchar 空白未知填充,一个字符,可有可无 右边填充
#!/usr/bin/env python
# -*- coding:utf8 -*-
#str
test = "alex"
v = test.ljust(20,"*")
print(v)
b32 rjust(width, fillchar=None) width 代表总长度 fillchar 空白未知填充,一个字符,可有可无 左边填充
#!/usr/bin/env python
# -*- coding:utf8 -*-
#str
test = "alex"
v = test.rjust(20,"*")
print(v)
b33 zfill(width) idth 代表总长度 默认左边填充0
#!/usr/bin/env python
# -*- coding:utf8 -*-
#str
test = "alex"
v = test.zfill(20)
print(v)
b4 count(sub, start=None, end=None) 去字符串中寻找,寻找子序列的出现次数 左闭右开
#!/usr/bin/env python
# -*- coding:utf8 -*-
#str
test = "aLexalexr"
v = test.count('ex')
print(v) test = "aLexalexr"
v = test.count('ex',6,8)
print(v)
b5 以什么什么结尾 endswith(suffix, start=None, end=None)
以什么什么开始startswith(suffix, start=None, end=None)
#!/usr/bin/env python
# -*- coding:utf8 -*-
#str
# 以什么什么结尾
# 以什么什么开始
test = "alex"
v = test.endswith('ex')
print(v)
v = test.startswith('alex')
print(v)
b6 find(sub, start=None, end=None) 从开始往后找,找到第一个之后,获取其位置 找不到返回-1
#!/usr/bin/env python
# -*- coding:utf8 -*-
#str
# 从开始往后找,找到第一个之后,获取其未知
# > 或 >=
test = "alexalex"
# 未找到 -1
v = test.find('ex')
print(v)
b7 index(sub, start=None, end=None) 找不到,报错 忽略
#!/usr/bin/env python
# -*- coding:utf8 -*-
#str
test = "alexalex"
v = test.index('')
print(v)
b8 format(*args, **kwargs) 格式化,将一个字符串中的占位符替换为指定的值
# -*- coding:utf8 -*-
#str
test = 'i am {name}, age {a}'
print(test)
v = test.format(name='alex',a=19)
print(v) test = 'i am {0}, age {1}'
print(test)
v = test.format('alex',19)
print(v)
b9 format_map(mapping) 格式化,传入的值 {"name": 'alex', "a": 19} 字典的形式
#!/usr/bin/env python
# -*- coding:utf8 -*-
#str
# 格式化,传入的值 {"name": 'alex', "a": 19}
test = 'i am {name}, age {a}'
v1 = test.format(name='df',a=10)
print(v1)
v2 = test.format_map({"name": 'alex', "a": 19})
print(v2)
b10 isalnum() 字符串中是否只包含 字母和数字 汉字
#!/usr/bin/env python
# -*- coding:utf8 -*-
#str
# 字符串中是否只包含 字母和数字 汉字
test = "as123对的?"
v = test.isalnum()
print(v)
b10a isalpha() 是否是字母,汉字
#!/usr/bin/env python
# -*- coding:utf8 -*-
#str
test = "as对的df"
v = test.isalpha()
print(v)
b10b isdecimal()<isdigit()<isnumeric() 当前输入是否是数字 判断的数字种类依次为
#!/usr/bin/env python
# -*- coding:utf8 -*-
#str
test = "②" # 1,② ,二
v1 = test.isdecimal()
v2 = test.isdigit()
v3 = test.isnumeric()
print(v1,v2,v3)
b11 expandtabs(width) 断句 找到制表符/t 制表符两边的内容间隔的距离为width
#!/usr/bin/env python
# -*- coding:utf8 -*-
#str
test = "username\temail\tpassword\nlaiying\tying@q.com\t123\nlaiying\tying@q.com\t123\nlaiying\tying@q.com\t123"
v = test.expandtabs(20)
print(v)
b12 isprintable() 是否存在不可显示的字符 \t 制表符 \n换行符
#!/usr/bin/env python
# -*- coding:utf8 -*-
#str
test = "oiuas\tdfkj"
v = test.isprintable()
print(v)
b13 isspace() 判断是否全部是空格
#!/usr/bin/env python
# -*- coding:utf8 -*-
#str
test = ""
v = test.isspace()
print(v)
b14 istitle() 判断是否是标题 title() 转换为标题
#!/usr/bin/env python
# -*- coding:utf8 -*-
test = "Return True if all cased characters in S are uppercase and there is"
v1 = test.istitle()
print(v1)
v2 = test.title()
print(v2)
v3 = v2.istitle()
print(v3)
b15 join(iterable) 字符串中的每一个元素按照指定分隔符进行拼接
#!/usr/bin/env python
# -*- coding:utf8 -*-
test = "你是风儿我是沙"
print(test)
# t = ' '
v = "_".join(test)
print(v)
b16 islower() isupper() 判断是否全部是小大写 lower() upper() 转换为小大写
#!/usr/bin/env python
# -*- coding:utf8 -*-
test = "Alex"
v1 = test.islower()
v2 = test.lower()
print(v1, v2) v1 = test.isupper()
v2 = test.upper()
print(v1,v2)
b17 strip(str) 去除两边str lstrip(str) 去除左边str rstrip(str) 去除右边str
#!/usr/bin/env python
# -*- coding:utf8 -*-
# 移除指定字符串
# 有限最多匹配
test = " \nxa "
#v = test.lstrip('xa')
#v = test.rstrip('9lexxexa')
#v = test.strip('xa')
#print(v) #test.lstrip()
#test.rstrip()
#test.strip()
#print(test)
# 去除左右空白
# v = test.lstrip()
# v = test.rstrip()
# v = test.strip()
# print(v)
# print(test)
# 去除\t \n
#v = test.lstrip()
#v = test.rstrip()
v = test.strip()
print(v)
b18 maketrans(src,dest) src源内容 dest 目标内容 对应关系替换
#!/usr/bin/env python
# -*- coding:utf8 -*-
test = "aeiou"
test1 = "" v = "asidufkasd;fiuadkf;adfkjalsdjf"
m = str.maketrans("aeiou", "")
new_v = v.translate(m)
print(new_v)
b19 分割为三部分 分割内容包含str partition(str) 从左边开始分割 rpartition(str) 从右边开始分割 分割为指定个数不包含str split(str,num) str 分割内容 num 分割 splitlines(boo) 只能根据,true,false:是否保留换行
#!/usr/bin/env python
# -*- coding:utf8 -*-
test = "testasdsddfg"
# v = test.partition('s')
# print(v)
# v = test.rpartition('s')
# print(v) v = test.split('s',1)
print(v)
test.rsplit() test = "asdfadfasdf\nasdfasdf\nadfasdf"
v = test.splitlines(True)
print(v)
b20 swapcase() 大小写转换 小写转大写
#!/usr/bin/env python
# -*- coding:utf8 -*-
test = "aLex"
v = test.swapcase()
print(v)
b21 字母,数字,下划线 : 标识符 def class
#!/usr/bin/env python
# -*- coding:utf8 -*-
a = "d2哈好的f"
v = a.isidentifier()
print(v)
b22 将指定字符串替换为指定字符串 replace(self, old, new, count=None)
#!/usr/bin/env python
# -*- coding:utf8 -*-
test = "alexalexalex"
v = test.replace("ex",'bbb')
print(v)
v = test.replace("ex",'bbb',3)
print(v)
b23 ###################### 7个基本魔法 ######################
# join # '_'.join("asdfasdf") # split # find # strip # upper # lower # replace
b24 ###################### 4个灰魔法 ######################
B241 一、for循环
#!/usr/bin/env python
# -*- coding:utf8 -*-
# test = "郑建文妹子有种冲我来"
# for 变量名 in 字符串:
# 变量名
# break
# continue # index = 0
# while index < len(test):
# v = test[index]
# print(v)
#
# index += 1
# print('=======') # for zjw in test:
# print(zjw) test = "郑建文妹子有种冲我来"
# for item in test:
# print(item)
# break for item in test:
continue
print(item)
B242 索引,下标,获取字符串中的某一个字符
#!/usr/bin/env python
# -*- coding:utf8 -*-
test = "妹子有种冲我来"
v = test[3]
print(v)
B243 三、切片
#!/usr/bin/env python
# -*- coding:utf8 -*-
test = "妹子有种冲我来"
v = test[0:1] # 0=< <1
print(v)
B244 四、获取长度
#!/usr/bin/env python
# -*- coding:utf8 -*-
test = "妹子有种冲我来"
# Python3: len获取当前字符串中由几个字符组成
v = len(test)
print(v)
# 注意: # len("asdf") # for循环 # 索引 # 切片
B245 五、获取连续或不连续的数字
#!/usr/bin/env python
# -*- coding:utf8 -*-
# Python2中直接创建在内容中
# python3中只有for循环时,才一个一个创建
r1 = range(10)
r2 = range(1,10)
r3 = range(1,10,2)
# 帮助创建连续的数字,通过设置步长来指定不连续
v = range(0, 100, 5) for item in r3:
print(item)
b25 ###################### 1个深灰魔法 ######################
# 字符串一旦创建,不可修改 # 一旦修改或者拼接,都会造成重新生成字符串
#!/usr/bin/env python
# -*- coding:utf8 -*-
name = "shiqianyu"
age = ""
info = name + age
print(info)
b26 练习题 根据用户输入的值,输出每一个字符以及当前字符所在的索引位置 #####
#!/usr/bin/env python
# -*- coding:utf8 -*-
# 根据用户输入的值,输出每一个字符以及当前字符所在的索引位置
usr = input("请输入值:\n")
index = 0
while index < len(usr):
print(index,usr[index])
index += 1
#!/usr/bin/env python
# -*- coding:utf8 -*-
# 根据用户输入的值,输出每一个字符以及当前字符所在的索引位置
# test = input(">>>:\n")
# print(test) # test = qwe test[0] test[1]
# l = len(test) # l = 3
# print(l)
#
# r = range(0,l) # 0,3
# for item in r:
# print(item, test[item]) # 0 q,1 w,2 e test = input(">>>\n")
for item in range(0, len(test)):
print(item, test[item])
# 制作表格
# 循环提示用户输入:用户名、密码、邮箱 (要求用户输入的长度不超过 20 个字符,如果超过则只有前 20 个字符有效)
# 如果用户输入 q 或 Q 表示不再继续输入,将用户输入的内容以表格形式大隐
s = ""
i = 1
while i<3:
name = input("请输入用户名:\t\n")
pwd = input("请输入密码:\t\n")
email = input("请输入邮箱:\t\n") template = "{0}\t{1}\t{2}\n"
v = template.format(name,pwd,email) s = s + v
i += 1
print(s.expandtabs(20))
c 列表 list
d 元组 tuple
e 字典 dict
f 布尔值 bool
day10-11-python基础之字符串的更多相关文章
- Python基础数据类型-字符串(string)
Python基础数据类型-字符串(string) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 本篇博客使用的是Python3.6版本,以及以后分享的每一篇都是Python3.x版 ...
- Python基础(二) —— 字符串、列表、字典等常用操作
一.作用域 对于变量的作用域,执行声明并在内存中存在,该变量就可以在下面的代码中使用. 二.三元运算 result = 值1 if 条件 else 值2 如果条件为真:result = 值1如果条件为 ...
- python基础、字符串和if条件语句,while循环,跳出循环、结束循环
一:Python基础 1.文件后缀名: .py 2.Python2中读中文要在文件头写: -*-coding:utf8-*- 3.input用法 n为变量,代指某一变化的值 n = inpu ...
- python基础之字符串基本功能
终于还是踏上了Python的不归路,不知道能不能走的完. 先总结一下今天学习的字符串的各个功能吧:只写了部分用的比较多的. 1.capitalize: 字符串首字母大写 >>> na ...
- Python基础__字符串拼接、格式化输出与复制
上一节介绍了序列的一些基本操作类型,这一节针对字符串的拼接.格式化输出以及复制的等做做详细介绍.一. 字符串的拼接 a = 'I', b = 'love', c = 'Python'. 我们的目的是: ...
- python基础类型—字符串
字符串str 用引号引起开的就是字符串(单引号,双引号,多引号) 1.字符串的索引与切片. 索引即下标,就是字符串组成的元素从第一个开始,初始索引为0以此类推. a = 'ABCDEFGHIJK' p ...
- Python基础二字符串和变量
了解一下Python中的字符串和变量,和Java,c还是有点区别的,别的不多说,上今天学习的代码 Python中没有自增自减这一项,在转义字符那一块,\n,\r\n都是表示回车,但是对于不同的操作系统 ...
- Python基础之字符串和编码
字符串和编码 字符串也是一种数据类型,但是字符串比较特殊的是还有个编码问题. 因为计算机自能处理数字,如果徐娅处理文本,就必须先把文本转换为数字才能处理,最早的计算机子设计时候采用8个比特(bit)作 ...
- Python高手之路【六】python基础之字符串格式化
Python的字符串格式化有两种方式: 百分号方式.format方式 百分号的方式相对来说比较老,而format方式则是比较先进的方式,企图替换古老的方式,目前两者并存.[PEP-3101] This ...
- Python开发【第一篇】Python基础之字符串格式化
字符串格式化 Python的字符串格式化有两种方式: 百分号方式.format方式 百分号的方式相对来说比较老,而format方式则是比较先进的方式,企图替换古老的方式,目前两者并存.[PEP-310 ...
随机推荐
- JS-词法作用域 作用域链
## 词法作用域 概念:所谓的词法作用域,就是代码在编写过程就体现出来的作用范围.代码一旦写好,不用执行, 作用范围就已经确定好了,这个就是所谓的词法作用域. ## 词法作用域的规则: 1,函数允许访 ...
- python语法_字典_字典操作
字典:使用映射关系来存储数据的 数据类型 dict = {''name“:"gm","age":"34"} 采用键值对来存储数据 key_v ...
- 一个LinkedBlockingQueue线程安全的例子
一个LinkedBlockingQueue线程安全的例子 package llj.mf.ace; import java.util.ArrayList; import java.util.HashSe ...
- GParted: GNOME Partition Editor, sharp weapon to modify disk partitions.
GParted Projects GNOME Partition Editor for creating, reorganizing, and deleting disk partitions. It ...
- vue 实现子向父传值
父组件 <template> <div id="app"> <child @onChange='onChildValue'></child ...
- layui 根据后台传来的值选择按钮
{{# if(d.status == 'xxx'){ }} <a class="layui-btn layui-btn-xs layui-btn-disabled" lay- ...
- 在python项目中导出项目依赖的模块信息
1.安装pipreqs pip install pipreqs 2.导出requriements.txt文件 在windows中,终端切换到项目所在的文件夹下: 运行: pipreqs ./ 如果遇到 ...
- spring注解:反射与配置
上图运行结果按下图配置文件中的配置,进行的spring扫描加载.无论是componentScan方式,还是xml配置方式,如果one是实现了一个接口的类,如one_Interface,那么在程序中用o ...
- webservice学习教程(三)--
快速入门 首先,我们来尝试一下调用别人写好的webService 来体验一把:我们访问http://www.webxml.com.cn/zh_cn/index.aspx 进入到里边 当我们输入一个号码 ...
- studio-3t 配置文件位置
换电脑了,原来的studio-3t的配置 在 C:\Users\用户名\.3T. 将这个目录下的所有文件拷贝到 新电脑里的 相同文件夹,覆盖即可