Python开发之路——Day2

时间:2022-11-06 10:02:38

一 :几点补充

1.之所以会出现乱码是由于终端使用的是GBK编码方式

UTF8→UNICODE→GBK,由于汉字在GBK中占两个字节,在utf8中占三个字节,所以在转换的过程中会出现错误

2.continue和break

continue用来中止当前循环,开始下次循环。break用来中止所有循环。

用法举例:count = 0

count = 0 while count < 10: count = count + 1
    print (conut) break#continue
    print('不会显示') print('end')

3.for 循环

Python开发之路——Day2Python开发之路——Day2
li = [11,22,33,44]#????
for item in li: print(item)
View Code

 

二:运算符

按照运算结果的不同,将运算符分为两种:a.输出的是结果值;b.输出的是布尔值

结果值:算数运算和赋值运算

算数运算包括:加+、减-、乘*、除/、幂**、取余%、除取整//

赋值运算包括:+=、-=、*=、/=、**=、%=、//=、=

举例:a+=b等价于a=a+b,依次类推。

三:基本数据类型

基本数据类型包括:数字(int)、字符串(str)、列表(list)、元祖(tuple)、字典(dict)、布尔值(bool)。

查看输出数据的类型

Python开发之路——Day2Python开发之路——Day2
a = "123"
print(type(a),a)
View Code

四.数字

在Python3中,数字类型都用int表示,在Python2中,有整型和长整型(long)

数字类型常用的两种操作:

a.将字符串转换为数字

Python开发之路——Day2Python开发之路——Day2
a = "123" b = int(a)#将字符串转为数字
print(b)
View Code

b.将数字按某种进制转换为十进制数

Python开发之路——Day2Python开发之路——Day2
a ="0001111" b=int(a,base=16)#将数值以等于号后面的进制转换为十进制
print(b)
View Code

c.计算数字的的二进制有几位

Python开发之路——Day2Python开发之路——Day2
test = 4 v = test.bit_length() print(v)
View Code

 

五.字符串

1.常用的几种字符串命令(记住)

a.join将字符串中的每一个元素按照指定分隔符进行拼接

Python开发之路——Day2Python开发之路——Day2
test = "湖人总冠军" t = "!" v = t.join(test) print(v)
View Code

b.split将字符串按照指定字符进行分割,并且不返回该字符,数字为2代表分为3份

Python开发之路——Day2Python开发之路——Day2
test = "hechouzihechouzi" v = test.split("h",2) print(v)
View Code

与split功能相似的还有rsplit,从字符串右边进行分割

splitline,根据\n对字符串进行分割,如果是True保留\n。

Python开发之路——Day2Python开发之路——Day2
test = "hechouzi\nhechouzi\nhechouzi\n" v = test.splitlines(True) print(v)
View Code

 

Python开发之路——Day2Python开发之路——Day2
test = "hechouzihechouzi" v = test.rsplit("h",2) print(v)
View Code

同样可以执行分割命令的partition和rpartition,却别是partition以指定字符为分割点,将字符串分为三份,且返回指定字符

Python开发之路——Day2Python开发之路——Day2
test = "hechouzihechouzi" v = test.rpartition("h") print(v)
View Code

c.find 寻找子序列在字符串指定位置中第一次出现的位置,字符串的第一位位置为0,如果没有找到,返回-1

Python开发之路——Day2Python开发之路——Day2
test = "hechouzi" v = test.find("h",1,4) print(v)
View Code

与find功能相类似的index,区别是index找不到会报错

d.strip 移除字符串两端指定子序列,lstrip移除左边,rstrip移除右边

Python开发之路——Day2Python开发之路——Day2
test = "hechouzihechouzihe" v1 = test.strip("he") v2 = test.lstrip("he") v3 = test.rstrip("he") print(v1,v2,v3)
View Code

e.upper和lower

upper是将字符串内容全部转换为大写,lower是将字符串内容全部转换为小写。

Python开发之路——Day2Python开发之路——Day2
test = "hECHouZi" v1 = test.lower() v2 = test.upper() print(v1,v2)
View Code

相似命令:capitalize,将字符串首字母大写,其余变小写。

casefold,同样是将字符串内容转换为小写,但lower只对ASCII 也就是 'A-Z'有效,casefold可以对其它一些语言里面存在小写的情况,如德语中'ß'的小写是'ss'。

swapcase,将字符串的大小写交换。

title,将字符串中每个单词的首字母大写

f.replace,用指定字符替代字符串中的字符

Python开发之路——Day2Python开发之路——Day2
test = "hecouzihechouzi" v = test.replace("uzi","小狗") print(v)
View Code

2.几种特殊命令

a.索引:查找字符串中第n个字符是什么

Python开发之路——Day2Python开发之路——Day2
test = "hechouzi" v = test[2] print(v)
View Code

b.切片:切去字符串中[m,n)中的字符,n可为负数

Python开发之路——Day2Python开发之路——Day2
test = "hechouzi" v = test[0:-1] print(v)
View Code

c.len 获取当前字符串由几个字符组成

Python开发之路——Day2Python开发之路——Day2
test = "湖人总冠军!" v = len(test) print(v)
View Code

用法举例

Python开发之路——Day2Python开发之路——Day2
test = "湖人总冠军!" index = 0 while index < len(test): v = test[index] print(v) index += 1
print("-----")
View Code

3.其他命令

a.center 将字符串居中,设置宽度并填充

Python开发之路——Day2Python开发之路——Day2
test = "hechouzi" v = test.center(30,"$")#将字符串设置在宽度为30显示,其他位置用$填补
print(v)
View Code

相似功能有:ljust和rjust

b.endswith和starswith 判断字符串是否以xx结尾或开头,返回True或者False

Python开发之路——Day2Python开发之路——Day2
test = "hechouzi" v1 = test.endswith("o",3,4)#位置为[3,6)
v2 = test.startswith("h",3,4) print(v1,v2)
View Code

c.format和format_map

format的两种用法

Python开发之路——Day2Python开发之路——Day2
test = "i am {0},i am {1}" v = test.format('hechouzi',25) print(v)
View Code
Python开发之路——Day2Python开发之路——Day2
test = "i am {name},i am {age}" v = test.format(name = 'hechouzi',age = 25) print(v)
View Code

format_map的用法

Python开发之路——Day2Python开发之路——Day2
test = "i am {name},i am {age}" v = test.format_map({"name":"hechouzi","age":25}) print(v)
View Code

d.is们

isalnum 判断字符串中是否只包含字母和数字

isalpha 判断字符串中是否只包含字母和汉字

isdecimal isdigit isnumeric三者均为判断是否是数字,isdecimal只能判断十进制小数,isdigit可以判断特殊字符如①,isnumeric可以判断汉字如“一”

isidentifier 检测字符串是否是字母开头

islower isupper 检测字符串的英文字母是否全是小写或大写

isprintable 判断打印时能否看到全部内容

isspace 判断是否全是空格

istitle 判断是否是标题

e.maketrans 设置替换规则

f.expandtabs 

Python开发之路——Day2Python开发之路——Day2
str.expandtabs(tabsize=8)
View Code

把字符串中的 tab 符号('\t')转为空格,tab 符号('\t')默认的空格数是 8