【学习笔记】--- 老男孩学Python,day4 编码,数据类型,字符串方法
今日主要内容 1. 编码 1. 最早的计算机编码是ASCII. 美国人创建的. 包含了英文字母(大写字母, 小写字母). 数字, 标点等特殊字符!@#$% 128个码位 2**7 在此基础上加了一位 2**8
ASCII 8位. 1个字节(byte)
2. GBK 国标码 16位. 2个字节(双字节字符) 3. unicode 万国码 32位, 4个字节 4. utf-8: 英文 8 bit 1个字节 欧洲文字 16bit 2个字节 中文 24bit 3个字节 8bit => 1 byte 1024 byte = > 1kb 1024 kb => 1mb 1024mb => 1gb 1024gb = > 1tb 2. 基本数据类型的概述 int 整数 str 字符串, 存储少量的数据 bool 布尔 list 列表, ["大阳哥", "东阳哥", ] tuple 元组. 只读列表, 不能改 dict 字典; 一对一对的存储数据. key:value {"赵阳":"大阳哥", 'jay':"周杰伦"} set 集合. 存储不重复的内容 3. int, bool, str int 方法操作: bit_length() 求二进制长度 bool: 类型转换 1. 你想转换成什么. 就用什么把目标包裹起来 2. 带空的是False, 不带空的True
字符串转换成数字 s = " i = int(s) print(type(i)) ss = str(i) print(type(ss)) # 综上可以得出. 你想转换成什么就用什么把目标括起来 # bool类型转换成数字 True: 1 False:0 b = False c = int(b) print(c) int转换成bool 零: False 非零: True a = 0 b = bool(a) print(b) while 1: # 1的效率比true 稍微高一点点 print("alex是个大xx") s = "" # "" 空字符串表示False, 非空字符串表示:True if s: print("哈哈") else: print("呵呵") 空的东西都是False, 非空的东西都是True m = None # 空 连空气都不如. 真空, False if m : print("a") else: print("b")
str 1. str索引和切片: 索引:起始下标是0(从左到右), (-1)从右到左 切片: s[起始位置: 结束位置: 步长] 特点:顾头不顾尾 2. 字符串的常用操作: 常用方法 字符串不可变. 1. upper() 转换成大写 2. strip() 去掉空格 3. replace() 替换 4. split() 切割 可以用来删除字符,想删什么就用split(什么) 5. format() 格式化输出 6. startswith() 判断是否以xxx开头 7. find() 查找. 找不到返回-1 8. len() 内置函数. 直接使用. 不用点操作 求字符串的长度 3. 迭代 for 变量 in 可迭代对象: 循环体 else: 预习: 列表 元组
参考代码:
规则: 顾头不顾腚, 从start开始截取. 截取到end位置. 但不包括end
s = "我爱周杰伦他媳妇" print(s[0]) print(s[1]) print(s[2]) print(s[3]) print(s[4]) print(s[-1]) print(s[-2]) print(s[-3]) print(s[-4]) 通过索引获取到的内容. 还是一个字符串 切片可以对字符串进行截取 语法 s[起始位置: 结束位置] 特点:顾头不顾腚 s = "alex和wusir经常在一起搞基" s1 = s[5:10] print(s1) s2 = s[0:4] + s[5:10] print(s2) s3 = s[5:] # 默认到结尾 print(s3) s4 = s[:10] # 从头开始 print(s4) s5 = s[:] # 从头到尾都切出来 print(s5) s6 = s[-2:] # 从-2 切到结尾 默认从左往右切 print(s6) 步长 语法:s[起始位置: 结束位置: 步长] s = "我是梅西,我很慌" s1 = s[1:5:2] # 从1开始, 到5结束, 每2个取1个 print(s1) s2 = s[::3] print(s2) s3 = s[6:2:-1] # - 表示反着来. 每两个取1个 print(s3) s = "这个标点符号很蛋疼" # s1 = s[7::-2] # print(s1) s2 = s[-1:-6:-2] print(s2)
字符串方法:
s = "alex and wusir and taibai" s1 = s.capitalize() # 首字母大写 print(s) # 原字符串不变 print(s1) s = "Alex is not a Good Man. " print(s.upper()) print(s.lower()) 在程序需要判断不区分大小写的时候. 肯定能用上 while True: content = input("请喷:") if content.upper() == 'Q': break print("你喷了:", content) s = "taiBai HenBai feicahngBai" print(s.swapcase()) # 大小写转换 s = "al麻花藤ex and wu sir sir se" print(s.title()) s = "麻花藤" print(s.center(9, "*")) username = input("用户名:").strip() # 去掉空格. password = input("密码:").strip() # 去掉空格 ': print("登录成功") else: print("登录失败") s = "*******呵a呵呵呵****************" print(s.strip("*")) # strip去掉的是左右两端的内容. 中间的不管 s = "alex wusir alex sb taibai" s1 = s.replace("alex", "晓雪") # 原字符串不变 print(s1) # 去掉上述字符串中的所有空格 s2 = s.replace(" ", "") print(s2) s3 = s.replace("alex", "sb", 2) print(s3) s = "alex_wuse_taibai_bubai" lst = s.split("_taibai_") # 刀是_ 切完的东西是列表. 列表装的是字符串 print(lst) s = "我叫{}, 我今年{}岁了, 我喜欢{}".format("sylar", 18, "周杰伦的老婆") print(s) 可以指定位置 s = "我叫{1}, 我今年{0}岁了, 我喜欢{2}".format("sylar", 18, "周杰伦的老婆") print(s) s = "我叫{name}, 我今年{age}岁了, 我喜欢{mingxing}".format(name="sylar", mingxing="汪峰的老婆", age=18) print(s) 你喜欢用哪个就用哪个 s = "汪峰的老婆不爱汪峰" print(s.startswith("汪峰")) # 判断字符串是否以xxx开头 print(s.endswith("爱妃")) # 判断字符串是否以xxx结尾 print(s.count("国际章")) # 计算xxx在字符串中出现的次数 print(s.find("汪峰", 3)) # 计算xxx字符串在原字符串中出现的位置, 如果没出现返回 -1 print(s.index("国际章")) # index中的内容如果不存在. 直接报错 s = "abc123" print(s.isdigit()) # 判断字符串是否由数字组成 print(s.isalpha()) # 是否由字母组成 print(s.isalnum()) # 是否由字母和数字组成 s = "二千136万萬" print(s.isnumeric()) # 数字 s = "你今天喝酒了么" i = len(s) # print() input() len() python的内置函数 print(i) i = s.__len__() # 也可以求长度 len()函数执行的时候实际执行的就是它 print(i) 把字符串从头到尾进行遍历 s = "晓雪老师.你好漂亮" print(len(s)) # 长度是:8 索引到7 1. 使用while循环来进行遍历 count = 0 while count < len(s): print(s[count]) count = count + 1 2. 用for循环来遍历字符串 优势:简单 劣势:没有索引 for c in s: # 把s中的每一个字符交给前面的c 循环 print(c) 语法: for bianliang in 可迭代对象: 循环体
【学习笔记】--- 老男孩学Python,day4 编码,数据类型,字符串方法的更多相关文章
- python学习笔记03:python的核心数据类型
从根本上讲,Python是一种面向对象的语言.它的类模块支持多态,操作符重载和多重继承等高级概念,并且以Python特有的简洁的语法和类型,OOP十分易于使用.Python的语法简单,容易上手. Py ...
- 【前端学习笔记01】JavaScript源生判断数据类型的方法
原始类型(值类型):Undefined.Null.Number.String.Boolean: 对象类型(引用类型):Object: typeof 可以识别标准类型,null外(返回Object): ...
- python学习第九讲,python中的数据类型,字符串的使用与介绍
目录 python学习第九讲,python中的数据类型,字符串的使用与介绍 一丶字符串 1.字符串的定义 2.字符串的常见操作 3.字符串操作 len count index操作 4.判断空白字符,判 ...
- python学习第八讲,python中的数据类型,列表,元祖,字典,之字典使用与介绍
目录 python学习第八讲,python中的数据类型,列表,元祖,字典,之字典使用与介绍.md 一丶字典 1.字典的定义 2.字典的使用. 3.字典的常用方法. python学习第八讲,python ...
- python学习第七讲,python中的数据类型,列表,元祖,字典,之元祖使用与介绍
目录 python学习第七讲,python中的数据类型,列表,元祖,字典,之元祖使用与介绍 一丶元祖 1.元祖简介 2.元祖变量的定义 3.元祖变量的常用操作. 4.元祖的遍历 5.元祖的应用场景 p ...
- python学习第六讲,python中的数据类型,列表,元祖,字典,之列表使用与介绍
目录 python学习第六讲,python中的数据类型,列表,元祖,字典,之列表使用与介绍. 二丶列表,其它语言称为数组 1.列表的定义,以及语法 2.列表的使用,以及常用方法. 3.列表的常用操作 ...
- 学习笔记《简明python教程》
学习笔记<简明python教程> 体会:言简意赅,很适合新手入门 2018年3月14日21:45:59 1.global 语句 在不使用 global 语句的情况下,不可能为一个定义于函数 ...
- python3.4学习笔记(二十三) Python调用淘宝IP库获取IP归属地返回省市运营商实例代码
python3.4学习笔记(二十三) Python调用淘宝IP库获取IP归属地返回省市运营商实例代码 淘宝IP地址库 http://ip.taobao.com/目前提供的服务包括:1. 根据用户提供的 ...
- python3.4学习笔记(二十一) python实现指定字符串补全空格、前面填充0的方法
python3.4学习笔记(二十一) python实现指定字符串补全空格.前面填充0的方法 Python zfill()方法返回指定长度的字符串,原字符串右对齐,前面填充0.zfill()方法语法:s ...
- python3.4学习笔记(二十) python strip()函数 去空格\n\r\t函数的用法
python3.4学习笔记(二十) python strip()函数 去空格\n\r\t函数的用法 在Python中字符串处理函数里有三个去空格(包括'\n', '\r', '\t', ' ')的函数 ...
随机推荐
- tomcat设置默认欢迎页、server.xml配置文件中的标签理解
一:要求:输入网址,不加文件名便可以访问默认页面 (1)项目中只有静态文件 方法:更改tomcat下的conf目录下的web.xml文件,如下图: <welcom-file-list>元素 ...
- 11-02 Java Object类使用详解
Object 作为超类 Object是类层次结构的根类,所有的类都直接或者间接的继承自Object类. Object类的构造方法有一个,并且是无参构造,这其实就是理解当时我们说过,子类构造方法默认访 ...
- Oracle EXPDP/IMPDP示例
待整理: 参考DAVE博客 http://blog.csdn.net/tianlesoftware/article/details/6260138
- C# 多线程学习系列三之CLR线程池系列之ThreadPool
一.CLR线程池 1.进程和CLR的关系一个进程可以只包含一个CLR,也可以包含多个CLR2.CLR和AppDomain的关系一个CLR可以包含多个AppDomain3.CLR和线程池的关系一个CLR ...
- inotify监听文件夹的变动
inotify只能监控单层目录变化,不能监控子目录中的变化情况.如果需要监控子目录,需要在调用inotify_add_watch(int fd, char *dir, int mask):int建立监 ...
- javascript中对条件判断语句的优化 分类: JavaScript 2015-06-07 09:54 832人阅读 评论(2) 收藏
不管写什么程序,平时都会用到条件语句,如:if...else... switch这样的语句,来达到对条件的判断.下面看来一段代码: function abc(test){ if (test == 1) ...
- .NET Framework 源码查看与调试
1. 直接下载.NET Framework源代码(下载地址),然后用Visual Studio 13 打开查看.2. 在线查看,网址:http://referencesource.microsoft. ...
- C++学习知识点
所谓的学习,知识只是一部分,理解知识是如何被抽象和提炼的过程,才是更重要的 1.c++代码里面的\(反斜杠) C语言的宏要求只能在同一行,是不能跨行的.这里的反斜杠就是告诉编译器,我这里虽然换行了,但 ...
- 【转】谷歌三大核心技术(三)Google BigTable中文版
谷歌三大核心技术(三)Google BigTable中文版 摘要 Bigtable 是一个分布式的结构化数据存储系统,它被设计用来处理海量数据:通常是分布在数千台普通服务器上的PB级的数据.Goo ...
- Java中的构造器与垃圾回收
构造器 在我们初始化对象时,如果希望设置一些默认值,那么就可以使用构造器,在Java中,构造器使用和类同名的名字且没有返回值,如下 class Test{ private String name; T ...