003-python基础-字符类型
基本数据类型(int,bool,str)
1.基本数据数据类型:
int 整数
str 字符串. 一般不存放大量的数据
bool 布尔值. 用来判断. True, False
list 列表.用来存放大量数据, []表示. 里面可以装各种数据类型.
tuple 元组. 只读列表. () 表示
dict 字典. {key:value}
set 集合. 不重复
2. int类型
bit_length() 返回一个数的二进制长度
a = 5 # 0 1 10 11 100 101
print(a.bit_length())
3. bool类型
布尔只有两个值. True,False. 一般是没有什么操作的.
类型转换的问题:
想把xx转换成yy. yy(xx)
可以表示False的内容:0, "", [], tuple(), {}, None
所有的空都是False. 所有的非空是True
a = 10
print(type(a))
s = str(a)
print(type(s)) int(s)
想把某数据转换成xxx数据类型. xxx(数据) a = 0 # False
print(bool(a)) s = "" # 空字符串是false
print(bool(s)) # True 空的东西是False. 非空的东西是True
lst = [1] # 空列表是False
print(bool(lst)) dic = {'jj':'林俊杰'} # 空字典是False
print(bool(dic)) a = None # 表示空. 真空.
print(bool(a)) 所有的空都是False. 所有的非空都是True
想把某数据装换成xxx数据类型. xxx(数据)
str => int
int(s)
int => str
str(i)
lst => tuple
tuple(lst)
tuple => list
list(tu)
while 1: # 死循环
print("alex是个人才") lst = [1,2,3] # 列表
tu = tuple(lst)
print(type(tu))
4. str类型 字符串
由',",''', """阔起来的内容就是字符串
字符串是不可变的数据类型.不论你执行任何操作. 源字符串是不会改变的, 每次操作都会返回新字符串
1. 索引和切片
索引从0开始, 使用[下标]可以获取到每一个字符, 还可以倒着数
切片: [起始位置:结束位置:步长]
1. 顾头不顾尾
2. 默认从左到右取值.
3. 当步长为负可以从右往左取值
s = "伊丽莎白鼠"
print(s[0])
print(s[1])
print(s[2])
print(s[3])
print(s[4])
print(s[5]) # 索引不能超过边界 print(s[-1]) # 倒数第一个
print(s[-2])
print(s[-3])
print(s[-4])
print(s[-5]) s = "伊丽莎白鼠的溜肥肠还有挖掘机" 切片 [起始位置: 结束位置] 1.顾头不顾尾, 2.从左往右切
print(s[1:3]) # 从1切到3. 但是取不到3 [1,3)
print(s[1:]) # 从1开始切. 切到结尾
print(s[:2]) # 从头切到2
print(s[:]) # 从头到尾
print(s[-3:-1]) # 只能从左往右切 给出第三个参数来控制方向,第三个参数叫步长
print(s[-1:-3:-1]) # - 表示反方向. 从右往左切 print(s[4:10:3])
print(s[-3:-9:-2])
2. 字符串相关操作
1. upper() 转换成大写
2. stript() 去掉空白
3. replace(old, new) 把xxx替换成xxxx
4. split() 切割. 返回列表. 用多长的刀. 就要损失掉多少
5. startswith() 判断是否以xxx开头
6. find(), count(), index()
7. len() 字符串长度. python的内置函数
s = "al1ex is a gay and Wu傻sir is A gay too" s1 = s.capitalize() # 把首字母变成大写
print(s1) s2 = s.lower() # 小写
print(s2) s3 = s.upper() # 大写
print(s3) s4 = s.swapcase() # 大小写互换
print(s4) s2 = "БBß" # 俄美德
print(s2)
print(s2.lower())
print(s2.casefold()) s5 = s.title() # 把每个单词的首字母大写
print(s5) s = "sb"
s1 = s.center(10, "*") # 强行使用*在原字符串左右两端进行拼接. 拼接成10个单位
print(s1) s = " alex is a gay "
s1 = s.strip() # 默认去掉空格. 空白\t \n
print(s1) username = input("请输入用户名:").strip()
password = input("请输入密码:").strip()
if username == 'alex' and password =="123":
print("成功")
else:
print("失败") s = "sb alex wusir sb sb taibai taibai sb"
print(s.strip("sb")) # 可以指定要去掉的内容 s = "泰坦尼克号, 西虹市首富, 小猪佩奇, 冒险王"
s1 = s.replace("冒险王", "西西里的美丽传说")
s2 = s.replace("佩奇", "wusir")
print(s2) s = "alex_wusir_taibai_ritian"
s1 = s.replace("_","")
print(s1) s8 = "sylar_alex_taibai_wusir_eggon"
# s9 = s8.replace("i", "sb", 2) # 换两次
# print(s9) lst = s8.split("taibai") # 切完的结果是一个列表. 列表中装的是字符串. 用什么切. 就会损失掉什么
print(lst) s = """我家大门常打开
开放怀抱等你
后面是什么歌词
我忘了"""
lst = s.split("\n")
print(lst) s = "我今天下午要去吃饭饭"
lst = s.split("我今天下午要去吃饭饭哈哈哈") # 没切
print(lst) s = "我叫%s, 我今年%s了, 我喜欢%s" % ("周杰伦", "40", "昆凌")
print(s) s = "我叫{}, 我今年{}了, 我喜欢{}".format("周杰伦", "40", "昆凌")
print(s) s = "我叫{0}, 我今年{1}了, 我喜欢{2}".format("周杰伦", "40", "昆凌")
print(s) s = "我叫{name}, 我今年{age}了, 我喜欢{hobby}".format(hobby="周杰伦", age="40", name="昆凌")
print(s) s = "alex is a gay"
print(s.startswith("tory")) # 以xxx开头
print(s.endswith("girl")) # 以xxx结尾 s = "I have a dream. I want to kill you!"
都可以进行索引范围
print(s.count("dream")) # 计算a在字符串中出现的次数
print(s.find("a")) # 查找xxx在字符串中出现的位置. 只找第一次出现的位置, 没有就返回-1
print(s.index("z")) # 当字符串不存在的时候. 报错 s = "abcdefg1@"
print(s.isdigit()) # %d
print(s.isalpha()) # 字母
print(s.isalnum()) # 是否由数字和字母组成 s = "壹仟贰佰五十六萬拾"
print(s.isnumeric()) 字符串长度, python的内置函数len(), int(), bool(), str(), type()
s = "娃哈哈可口可乐"
print(len(s)) # 字符串中的字符的个数 s = "王小利刘能赵四"
# # 对字符串进行遍历.
n = 0
while n < len(s):
print(s[n])
n = n + 1 # 迭代
for c in s: # charactor
print(c)
3. for循环
for 变量 in 可迭代对象:
循环体, 也存在break和continue
else:
当循环结束的时候会执行
003-python基础-字符类型的更多相关文章
- Python基础-字符编码与转码
***了解计算机的底层原理*** Python全栈开发之Python基础-字符编码与转码 需知: 1.在python2默认编码是ASCII, python3里默认是utf-8 2.unicode 分为 ...
- python基础——重访类型分类
python基础--重访类型分类 对象根据分类来共享操作:例如,字符串.列表和元组都共享诸如合并.长度和索引等序列操作. 只有可变对象(列表.字典和集合)可以原处修改:我们不能原处修改数字,字符串.元 ...
- java 基础 字符类型
1.char类型的字面量可以是一个英文字母.字符或一个汉字,并且由单引号包括. 2.Java底层使用一个16位的整数来处理字符类型,该数值是一个字符的unicode编码值. unicode: 1.un ...
- MySQL 基础--字符类型
##=====================================================================================## MySQL支持的字符 ...
- python基础--数值类型和序列类型
Python中数值类型:int(整数),float(浮点数),True/False(布尔值,首字母必须大写) int:1 #任意整数 float:2.3 #小数 python赋值: a = ...
- Python基础(字符编码与文件处理)
一.了解字符编码的知识储备 1.计算机基础知识(三副图) 2.文本编辑器存取文件的原理(notepad++,Pycharm,word) 打开编辑器就启动了一个进程,是在内存中运行的,所以在编辑器写的内 ...
- 第2章 Python基础-字符编码&数据类型 列表&元祖 练习题
1.创建一个空列表,命名为names,往里面添加old_driver,rain,jack,shanshan,peiqi,black_girl元素 names = ["old_driver&q ...
- 第2章 Python基础-字符编码&数据类型 字符编码&字符串 练习题
1.简述位.字节的关系 位(bit)是计算机中最小的表示单元,数据传输是以“位”为单位的,1bit缩写为1b 字节(Byte)是计算机中最小的存储单位,1Byte缩写为1B 8bit = 1Byte ...
- python基础--字符编码以及文件操作
字符编码: 1.运行程序的三个核心硬件:cpu.内存.硬盘 任何一个程序要是想要运算,肯定是先从硬盘加载到当前的内存中,然后cpu根据指定的指令去执行操作 2.python解释器运行一个py文件的步骤 ...
随机推荐
- 用Nginx实现微信小程序本地SSL请求
我们在开发小程序的时候,需要填写一个授权域名.还要有一个证书.这些都是花钱的.开发非常不方便.本文主要讲解配置ssl和本地开发 小程序后台添加授权域名 这个域名你要写一个是备案过的.具体是不是你的,都 ...
- WPF 4 Ribbon 开发 之 标签工具栏(Tab Toolbar)
原文:WPF 4 Ribbon 开发 之 标签工具栏(Tab Toolbar) 本篇将开始介绍标签工具栏的开发内容,标签工具栏可以说是Ribbon 的核心部分,应用程序所有的功能特性都会集中 ...
- 用MVVM模式开发中遇到的零散问题总结(5)——将动态加载的可视元素保存为图片的控件,Binding刷新的时机
原文:用MVVM模式开发中遇到的零散问题总结(5)--将动态加载的可视元素保存为图片的控件,Binding刷新的时机 在项目开发中经常会遇到这样一种情况,就是需要将用户填写的信息排版到一张表单中,供打 ...
- WPF 多点触摸开发[2]:WPF触摸的几个手势的执行顺序
原文:WPF 多点触摸开发[2]:WPF触摸的几个手势的执行顺序 前面我讲了在win7下使用模拟器,进行调试模拟多点触摸,其实际开发中这样也比较麻烦.. 要拿几个鼠标. 所以更多的人会 买个触摸套 套 ...
- 【C#】WixToolset快速入门教程
原文:[C#]WixToolset快速入门教程 介绍 给windows系统做软件,常见的打包工具大家可能都听说过,如:大名鼎鼎的Installshield.Inno setup等.在遇见Wix之前In ...
- delphi中使用词霸2005的动态库XdictGrb.dll实现屏幕取词
近日来,在网上发现关于屏幕取词技术的捷径,搜索很长时间,发现实现方式以VB出现的居多,但是通过Delphi来实现的却好象没有看到,自己参考着VB的相关代码琢磨了一下通过delphi来实现的方式. 其实 ...
- Linux下基于Bluez
硬件:Moto H670 蓝牙耳机 (CSR chip)/ Broadcom v2.0 adapter软件:bluez-4.26 / bluez-gnome-1.8 / linux kernel 2. ...
- Win8 Metro(C#)数字图像处理--3.5图像形心计算
原文:Win8 Metro(C#)数字图像处理--3.5图像形心计算 /// <summary> /// Get the center of the object in an image. ...
- 水晶报表异常“CrystalDecisions.ReportSource.ReportSourceFactory”的类型初始值设定项引发异常,未能加载文件或程序集“log4net
System.TypeInitializationException: “CrystalDecisions.ReportSource.ReportSourceFactory”的类型初始值设定项引发异常 ...
- Advanced Installer 安装前卸载旧版本的办法
原文:Advanced Installer 安装前卸载旧版本的办法 Advanced Installer这个工具百度出来的资料太少了. 在我们平常打包的工作中,经常遇到的一个问题是,如何能在安装新版本 ...