day-04 总结python字符串

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了day-04 总结python字符串相关的知识,希望对你有一定的参考价值。

参考技术A

1.什么是字符串
序列,有序,不可变的
用单引号或者双引号任意字符集,

2,字符串中的字符
普通字符:\'23\', \'sdfsdfsd\', \'+ + (**&^%$#@@\', \'发技术规范举案说法\'

\'\'\'
python中的字符采用的是unicode编码

1.什么是编码
就是数字和字符的一一对应的,其中字符对应的数字就是字符的编码
a - 97
b - 98

2.编码方式
ASCII码表 :针对数字字符,字母字符(26个小写字母和26个大写字母),一些英文中对应的符号进行编码
小写字母要大于大写字母的编码值,采用一个字节对字符进行编码,只能对128个字符进行编码

Unicode码 :Unicode码包含了ASCII码表,同时能够对世界上所有语言对应的符号进行编码,
采用两个字节进行编码,能够编码65536个字符

3.两个函数
chr(编码值)--将字符编码值转化为字符
ord(字符)-- 获取字符对应的编码值
中文编码范围 0x4e00~~~~~0x9fa5

一旦一个字符串确定了,那么字符串中每个字符的位置就确定了,而且每个字符会对应一个表示其位置和顺序的下标值

1,下标(索引)
字符串中的每一个字符都有一个下标,代表在字符串中的位置
下标范围是:0到字符串长度---1 0(代表第一个字符的位置)
-1 ~ 字符串长度 -1(代表字符串中最后一个字符的位置)

\'abc\' # \'\'

获取单个字符
语法:字符串[下标]--获取字符串中指定下标对应的字符
说明 字符串--可以是字符串常量,也可以是字符串变量
[]---固定写法
下标--字符的下标,不能越界。

获取部分字符
语法:字符串[开始下标:结束下标:步长]
步长-- 一个整数
功能: 从开始下标获取到结束下标前位置,每次下标值增加步长,结果是字符串
注意:当步长是整数,开始下标对应的字符要在结束下标的前面
当步长是负数,开始下标对应的字符要在结束下标的后面

方法2:字符串[开始下表:结束下标](相当于步长是一)

获取部分字符,省略下标
获取部分字符的时候开始下标和结束下标都可以省略
a.开始下标省略
字符串[:结束下标:步长] 或者字符串[:结束下表]
字符串是正数:从字符串开头开始往后获取
字符串是负数:从字符串结尾开始往前获取

结束下标省略
字符串[开始下标::步长]
步长是正数,从开始下标从前往后获取到字符串最后
步长是负数,从开始下标从后往前获取到字符串开始

,加法运算
字符串1 + 字符串2 将两个字符串拼接在一起,产生一个新的字符串

乘法运算
字符串 * n(正整数):字符串中的内容重复n次产生一个新的字符串

比较运算符
a. == !=
字符串1 == 字符串2 ---------判断两个字符串是否相等

b.> ,< , >= ,<= (所有的大写字母编码都比小写的编码小)
两个字符串比较大下:从第一个开始,找到第一对不同的字符,然后比较他们的编码值的大小

in 和 not in
字符串1 in 字符串2 :判断字符串2是否包含字符串1
字符串1 not in 字符串2 :判断字符串2是否不包含字符串1

len函数
len(序列)------- 获取序列的长度
len(字符串)----获取字符串中字符的个数

str函数
str(数据): 将数据转换成字符串

其他数据转换成字符串
所有的数据都可以转换成字符串,转换的时候就是在数据的值的最外面加引号

补充:系统对应的类型名不能用来给变量命名

字符串转其他类型
字符串转整数: int(字符串) 去掉引号后本身就是个整数的字符串才能转
字符串转浮点型: Float(字符串)
字符串转布尔: boll(字符串) ,除了空串会转化成False,其他的都会转化成True

格式字符串
指的是字符串中通过格式占位符来表示字符串中变化,然后后面再通过其他的值来给占位符赋值
含有格式占位符的字符串 % (占位符对应的值)
说明:
含有格式占位符有固定写法,可以有多个
%----固定写法
()----里面值 的个数要和前面的格式占位符一一对应
%d--整数
%s--字符串
%f--小数
%c--字符(可以将数字转换成字符)

字符串.capitalize() - 将字符串第一个字符转换成大写

2.字符串对齐
字符串.center(width, fillchar) - 居中
字符串.ljust(width, fillchar) - 左对齐
字符串.rjust(width, fillchar) - 右对齐

width - 正整数,表示新的字符串的宽度
fillchar - 字符, 填充字符串

字符串.isalpha 若字符串至少有一个字符,并且所有字符都是字母就返回True,否则返回False

字符串。isdigit() 若字符串中只包含数字就返回True,否则返回False

若字符串中只包含数字字符,则返回True,否则返回 False

3.join(seq)
字符串1.join(字符串2): 将字符串1的内容插入到字符串2的每个字符之间

max(字符串) 编码最大
min(字符串)

count(str)|返回 str 在 string 里面出现的次数

|islower()|如果字符串中包含至少一个区分大小写的字符,并且所有这些(区分大小写的)字符都是小写,则返回 True,否则返回 False

expandtabs(tabsize=8)|把字符串 string 中的 tab 符号转为空格,tab 符号默认的空格数是 8 。

|isspace()|如果字符串中只包含空白,则返回 True,否则返回 False

endswith(suffix)|检查字符串是否以 obj 结束,如果beg 或者 end 指定则检查指定的范围内是否以 obj 结束,如果是,返回 True,否则返回 False.

Python3.X全栈-Day10-PycharmIDE初识及运算符字符串的介绍

  • 01 python全栈s3 day10 上节内容回顾以及补充
  • 02 python全栈s3 day10  上周作业实现
  • 03 python全栈s3 day10  Pycharm的安装和使用
  • 04 python全栈s3 day10  Python 运算符(一)
  • 05 python全栈s3 day10  Python 运算符(二)
  • 06 python全栈s3 day10  Python 运算符以及总结
  • 07 python全栈s3 day10  Python 基本数据类型介绍
  • 08 python全栈s3 day10  Python 整形的魔法
  • 09 python全栈s3 day10  Python 字符串的魔法(一)
  • 10 python全栈s3 day10  Python 字符串的魔法(二)

01 python全栈s3 day10 上节内容回顾以及补充

1、主流编程语言介绍;(Java、Python、PHP、C、C++、C#、Ruby、Go)

2、Python解释的种类;(JPython、Cpython、PyPy)

3、执行Python程序的方式;(Python解释器直接运行、Python解释器执行特定文件)

4、#!/usr/bin/env python(python在Linux下的安装路径)以及 编码# -*- coding:utf8 -*-;

5、编码补充-编码的encode以及decode;

技术分享图片

1)utf8中文是3个字节,gbk中文是2个字节;

2)utf8相对于unicode来说是压缩和优化;

3)保存文件时候,可以选择编码格式;

4)print("Hello World!")

5)input("")获取用户输入(input接收到的数据均为字符串) 

6)变量概念以及变量的定义规范;

7)if单分支;if~else双分支以及if~elif~else多分支

8)代码块以及Python中严格缩进的说明;

9)while条件循环、死循环以及while~else;

10)while循环中continue及break语句的区别;

  • break终止循环;
  • continue终止本次循环,进入下一次循环;

02 python全栈s3 day10  上周作业实现

1、作业实现;

 1 #__author__:TQTL911
 2 #date:‘18/4/30 16:48‘
 3 #Req:尝试3次之后,系统给予友好提示:是否想继续玩耍{Y/y}
 4 #如果用户输入Y或y,则继续进行,否则将退出程序
 5 username = "tqtl"
 6 password = "Ab123456."#将该变量放置在while循环体之外,防止每次调用,提高程序效率
 7 times = 1
 8 #user_input = input("")
 9 while times <= 3:
10     input_username = input("请输入您的用户名:")
11     input_password = input("请输入您的密码:")
12     if username == input_username and password == input_password:
13         print("Congrantulations on you,Welcome to login our website!")
14         break
15     else:
16         print("Invalid username or password,Please check your information carefully.")
17     times += 1
18     if times == 4:#times +=1之后,数字4,所以进行第四次判断
19         user_input=input("是否想继续玩耍[Y/y]")
20         #print("是否想继续玩耍[Y/y]")
21         if user_input == "Y" or user_input== "y":#此处注意不能写成user_input == "Y" or "y"
22             times = 1#将计数器重置到最初始状态
23         else:
24             print("Your input is neither Y or y,game over.")
25         print("you have try many times,game over.")

03 python全栈s3 day10  Pycharm的安装和使用

1、Python开发IDE(集成开发环境)

集成开发环境IDE,Integrated Development Environment )是用于提供程序开发环境的应用程序,一般包括代码编辑器编译器调试器和图形用户界面等工具。集成了代码编写功能、分析功能、编译功能、调试功能等一体化的开发软件服务套。所有具备这一特性的软件或者软件套(组)都可以叫集成开发环境。如微软的Visual Studio系列,Borland的C++ Builder、Delphi系列等。该程序可以独立运行,也可以和其它程序并用。IDE多被用于开发HTML应用软件。例如,许多人在设计网站时使用IDE(如HomeSiteDreamWeaver等),因为很多项任务会自动生成。

技术分享图片

2、一定要使用Pycharm专业版;

3、不要使用汉化版,强迫自己学习英语;

4、Pycharm新建项目(告诉Pycharm,Python解释器在电脑的路径);

技术分享图片

5、Pycharm下新建文件夹、文件的方式;

6、Pycharm的基础设置——字体、字号大小以的鼠标混轮滚动调整字体大小、显示行号;

技术分享图片

技术分享图片

技术分享图片

04 python全栈s3 day10  Python 运算符(一)

1、算数运算符、比较运算符、逻辑运算符、赋值运算符、成员运算符、身份运算符以及位运算

1)+、-、*、/、%、**、//

2)in与not in

2、给Python代码添加注释的方式:Ctrl+?

1)注释代码;(单行注释、多行注释)

2)给代码添加注释;(方便自己,方便他人)

05 python全栈s3 day10  Python 运算符(二)

1、引入新的数据类型-布尔值(True 、False)

1)真-True;

2)假-False;

06 python全栈s3 day10  Python 运算符以及总结

1、if True 或者while True的使用;

2、in 与not in的结果就是布尔值;

3、通过布尔值引出比较预算符;

4、常见运算符总结;(字不如表,表不如图)

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

5、and or的总结;

1)添加括号,提升运算优先级;

2)执行顺序从前到后;

3)计算的短路原则;

6、算数运算符、赋值运算符归位一类;(获取结果为特定的值)

7、比较运算符、逻辑运算符以及成员运算符归位一类(获取结果为布尔值)

07 python全栈s3 day10  Python 基本数据类型介绍

1、已学习的3个基本数字类型-数字、字符串、布尔值;

1)整型int、字符串str、列表list、元组tuple、字典dict、布尔值bool等都有自己的魔法(方法);

2)在Python3里面,没有长整型(long)的概念,均为int类型;

3)Ctrl+鼠标左键点击关键字,即可查看所具备的功能;

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

08 python全栈s3 day10  Python 整型的魔法

1、将字符串转换成数字;

1 a = "123"
2 print(type(a),a)
3 b = int(a)
4 print(type(b),b)

<class ‘str‘> 123
<class ‘int‘> 123

2、当前数字的二进制,至少用几位来表示;

1 age = 5
2 r=age.bit_length()#当前数字的二进制,至少用几位来表示
3 print(r)

09 python全栈s3 day10  Python 字符串的魔法(一)

1、字符串的魔法多到我们都无法记住,哈哈!

通过Ctrl+鼠标左键,查看str的帮助信息;

 1 #__author__:TQTL911
 2 #date:‘18/4/30 21:54‘
 3 #001capitalize
 4 string1 = "tQtl"
 5 practice1 = string1.capitalize()#字符串的首字母大写;
 6 print("字符串string的魔法学习举例1:",practice1)
 7 #002所有变成小写,casefold更牛逼,许多未知的对应关系变成小写
 8 string2 = "cuixiaozhao"
 9 practice2 = string2.casefold()
10 print("字符串string的魔法学习举例2-1:",practice2)
11 practice2 = string2.lower()
12 print("字符串string的魔法学习举例2-2:",practice2)
13 #003center
14 string3 = "cuixiaozhao"
15 practice3 = string3.center(20,"*")#设置总宽度,并将内容居中,内容可为空,只能为1个字符
16 print("字符串string的魔法学习举例3:",practice3)
17 #004count
18 string4 = "cuixiaozhaocuixiaosi"
19 practice4 = string4.count("o")#统计字符串中,某个字符出现的次数
20 print("字符串string的魔法学习举例4:",practice4)
21 #005count
22 string5 = "cuixiaozhaocuixiaosi"
23 practice5 = string5.count("o",1,18)#统计字符串中,在指定范围内,某个字符出现的次数
24 print("字符串string的魔法学习举例5:",practice5)
25 
26 #006startswith、endwith
27 string6 = "cuixiaozhaocuixiaosi"
28 practice6_1 = string6.startswith("c",0,20)#统计字符串中,在指定范围内,某个字符以xx开始;
29 practice6_2 = string6.endswith("i",0,20)#统计字符串中,在指定范围内,某个字符以xx结束;
30 print("字符串string的魔法学习举例6-1:",practice6_1)
31 print("字符串string的魔法学习举例6-2:",practice6_2)

10 python全栈s3 day10  Python 字符串的魔法(二)

 1 #__author__:TQTL911
 2 #date:‘18/4/30 22:20‘
 3 #001format字符串的格式化输出,将字符串中的占位符,替换为指定的值
 4 string1 = "I am {name},age {a}"
 5 practice1 = string1.format(name="cuixiaozhao",a=26)
 6 print("字符串string的魔法学习举例1-1:",practice1)
 7 
 8 string1 = "I am {0},age {1},and I come from {2},I am a work hard {3}"
 9 practice1 = string1.format("cuixiaozhao",26,"hebei Province","man")
10 print("字符串string的魔法学习举例1-2:",practice1)
11 #002 format_map,传入的值为字典类型,键值对形式
12 string2 = "I am {name},age {a}"
13 practice2_1 = string2.format(name="cuixiaozhao",a=26)
14 practice2_2 = string2.format_map({"name":"cuixiaozhao","a":26})
15 print("字符串string的魔法学习举例2-1:",practice2_1)
16 print("字符串string的魔法学习举例2-2:",practice2_2)
17 #003 index,通过字符查找索引,如果字符不存在会报错,不如使用find
18 string3 = "My lover is LJP,i will get married with her"
19 practice3 = string3.index("l")#字符串的首字母大写;
20 print("字符串string的魔法学习举例3:",practice3)
21 
22 #004 find,通过字符查找索引,如果字符不存在会报错,返回值-1
23 string4 = "My loevr is LJP,i will get married with her"
24 practice4 = string4.find("2")
25 print("字符串string的魔法学习举例4:",practice4)
26 
27 #005 isalnum判断字符串中是否只能包含和数字
28 string5 = "BJYZD001"
29 practice5 = string5.isalnum()
30 print("字符串string的魔法学习举例5:",practice5)

以上是关于day-04 总结python字符串的主要内容,如果未能解决你的问题,请参考以下文章

从0开始入门python一个半月的三万字学习笔记汇总!!!

python之路:Day04 --- Python基础4

python 学习笔记day04-python字符串列表元组

python之路 day04

Python学习之旅—Day04

python-day04-study