百木园-与人分享,
就是让自己快乐。

3.9python学习笔记

字符串的内置方法

1. strip

strip方法:可以移除字符串首尾的指定字符,可以选择方向
s1 = \'&&&zhangqiang&&&\'
print(s1.strip(\'&\'))  #  zhangqiang
print(s1.lstrip(\'&\')) #  zhangqiang&&&
print(s1.rstrip(\'&\')) #  &&&zhangqiang

2.大小写操作

s2 = \'NIhAo\'
s2.lower() #将所有的英文字母变为小写的 nihao
s2.upper() #所有字母变成大写 NIHAO
s2.islowe()  #判断字符串中所有字母是否都是小写 结果是布尔值
s2.isupper() #判断字符串中所有字母是否都是大写 结果是布尔值

3.判断字符串的开头或者结尾是否有指定的字符

s3 = \'hi 你今天过的怎么样\'
print(s3.startswith(\'h\'))  # True
print(s3.startswith(\'i\'))  # False
print(s3.startswith(\'hi\')) # True
print(s3.endswith(\'样\'))  # True
print(s3.endswith(\'么\'))  # False
print(s3.endswith(\'你今天过的怎么样\'))  # True

4.格式化输出

format方法的四种用法:
1、跟占位符一样,使用{}占位:
print(\'你好我叫{}今年{}岁 身高是{}\'.format(\'name\',20,183))
2、根据索引取值:
print(\'my name is {0} {0} my age is {0} {1}\'.format(\'jason\', 18))
3、根据指名道姓的方式取值
print(\'我们一个有{su}人,分别是{name},{name2},{name3}\'.format(name=\"zq\",name2=\'cy\',name3=\'ajr\',su=3))
4.直接使用已经出现的变量
print(f\'你的账号是{name},密码是{password}\')
#注意这个方法需要在字符串前加一个f

5.拼接字符串

s1 = \'年少不知富婆香\'
s2 = \'错把少女当成宝\'
print(s1 + s2) #如果数据较大,会占用比较大的空间,并且时间花的多
print(s * 10) #直接重复10次
print(\'|\',join(s1))  #年|少|不|知|富|婆|香
print(\'$\'.join([\'jason\', \'kevin\', \'justin\', \'tony\']))
# jason$kevin$justin$tony
\'\'\'join方法相当于是将括号内的元素进行for循环\'\'\'
l1 = [11, \'jason\', \'kevin\']  #报错!!!
print(\'|\'.join(l1))  #报错!!!join的元素必须都是字符串才可以

6.替换字符串中指定的字符

 s6 = \'jason is DSB DSB DSB DSB jason jason jason\'
 将jason替换成老刘
 print(s6.replace(\'jason\', \'老刘\'))  # 默认一次性替换所有
 指定替换的个数
 print(s6.replace(\'jason\', \'老刘\', 2))  # 还可以通过数字控制替换的个数 从左往右
\'\'\'很多文本编辑器里面的替换功能 就可以使用replace完成\'\'\'

7.判断字符串中是否是纯数字

s7 = \'jason123\'
print(s7.isdigit())  # False
print(\'123\'.isdigit())  # True
print(\'123.21\'.isdigit())  # False
score = input(\'score>>>:\')
if score.isdigit():
    score = int(score)
else:
    print(\'你他喵的能不能好好写\')

8.需要了解的一些字符串操作

1.查找指定字符对应的索引值
s1 = \'今天是个好日子\'
print(s1.find(\'好\'))  #从左往右查找
print(s1.find(\'n\',1,5)) #输出-1 就是没有找到
print(s1.index(\'好\'))
print(s1.index(\'n\')) #找不到直接报错,没有返回值
2.文本位置改变
 name = \'zhangqiang\'
 print(name.center(30, \'-\'))  # ------------tony-------------
 print(name.ljust(30, \'*\'))  # zhangqiang**************************
 print(name.rjust(30, \'$\'))  # $$$$$$$$$$$$$$$$$$$$$$$$$$zhangqiang
 print(name.zfill(50))  # zero 零  0000000000000000000000000000000000000000000000zhangqiang
3.特殊符号:斜杠与一些英文字母的组合会产生特殊的含义
 print(\'ja\\tson\\nke\\avin\')
\'\'\'如果想取消它们的特殊含义 可以在字符串的前面加一个字母r\'\'\'
 print(r\'ja\\tson\\nke\\avin\')
4.captalize,swapcase,title
4.1 captalize:首字母大写
 message = \'hello everyone nice to meet you!\'
 message.capitalize()
 Hello everyone nice to meet you!
4.2 swapcase:大小写翻转
 message1 = \'Hi girl, I want make friends with you!\'
 message1.swapcase()
 hI GIRL, i WANT MAKE FRIENDS WITH YOU!
4.3 title:每个单词的首字母大写
  msg = \'dear my friend i miss you very much\'
  msg.title()
  Dear My Friend I Miss You Very Much

列表的内置方法

1.类型转换

    print(list(123))  # 报错
    print(list(123.4))  # 报错
    print(list(\'jason\'))  # [\'j\', \'a\', \'s\', \'o\', \'n\']
    print(list({\'name\': \'jason\', \'pwd\': 123}))  # [\'name\', \'pwd\']
    print(list((11,22,33,44,55)))  # [11, 22, 33, 44, 55]
    print(list({1, 2, 3, 4, 5}))  # [1, 2, 3, 4, 5]
    \"\"\"
    list可以转换支持for循环的数据类型
        可以被for循环的数据类型
            字符串 列表 字典 元组 集合
    \"\"\"

2.取值的相关操作

   name_list = [\'张三\',\'李四\',\'王五\',\'牛六\',\'狗蛋\']
1.索引取值
    print(name_list[0])    # \'张三\'
    print(name_list[-1])   # \'狗蛋\'
2.切片操作
    print(name_list[1:3])  # [\'李四\', \'王五\']
    print(name_list[-3:-1]) #[\'王五\', \'牛六\']
3.统计列表中元素的个数
	print(len(name_list))  # 5
4.成员运算 最小判断单位是元素不是元素里面的单个字符
    print(\'张\' in name_list)  # False   
    print(\'李四\' in name_list)  # True
5.列表添加元素的方式
    5.1name_list.append(\'狗剩\')
    #name_list = [\'张三\',\'李四\',\'王五\',\'牛六\',\'狗蛋\',\'狗剩\']
  指定位置插入\'单个\'元素 #可以插入各种类型
	5.2name_list.insert(1, \'狗剩\')
    #name_list = [\'张三\',\'狗剩\',\'李四\',\'王五\',\'牛六\',\'狗蛋\']
  	5.3合并列表
  	#name_list =[\'张三\', \'李四\', \'王五\', \'牛六\', \'狗蛋\', 11, 22, 33, 44, 55]
6.删除元素
	6.1通用的删除方式
	del name_list[0]
	print(name_list)
    6.2指定删除元素
    name_list.remove(\'张三\')
    6.3延迟删除
    print(name_list.pop()) #从尾部开始弹出 数据并没有直接删除
    print(name_list.pop(2))  # 还可以指定索引值 
8.修改列表元素
	name_list[0] = \'张蛋\'
    #name_list = [\'张蛋\',\'李四\',\'王五\',\'牛六\',\'狗蛋\']
9.排序
 ss = [44, 77, 99, 11, 22, 33, 88, 66]
 ss.sort()  # 默认是升序
 print(ss)  # [11, 22, 33, 44, 66, 77, 88, 99]
 ss.sort(reverse=True)  # 可以修改尾降序
 print(ss)  # [99, 88, 77, 66, 44, 33, 22, 11]
10.翻转
 ss = [44, 77, 99, 11, 22, 33, 88, 66]
 ss.reverse()  # 前后颠倒
 print(ss)
 # ss = [66, 88, 33, 22, 11, 99, 77, 44]
11.比较运算
 s1 = [11, 22, 33]
 s2 = [1, 2, 3, 4, 5, 6, 7, 8]
 print(s1 > s2)  # True
\"\"\"列表在做比较的时候 其实比的是对应索引位置上的元素\"\"\"
 s1 = [\'A\', \'B\', \'C\']  # A>>>65
 s2 = [\'a\']  # a>>>97
 print(s1 > s2)  # False
 ss = [44, 77, 99, 11, 22, 33, 88, 66]
 print(ss.index(99))
12.统计列表中某个元素出现的次数
l1 = [11, 22, 33, 44, 33, 22, 11, 22, 11, 22, 33, 22, 33, 44, 55, 44, 33]
print(l1.count(11))  # 统计元素11出现的次数
l1.clear()  # 清空列表
print(l1)

可变类型与不可变类型

\"\"\"
可变类型与不可变类型
    可变类型     列表
        值改变 内存地址不变 修改的是本身
    不可变类型   字符串
        值改变 内存地址肯定遍 修改过程产生了新的值
如何查看变量的\'内存地址\'
\"\"\"
 s1 = \'$$$jason$$$\'
 print(s1.strip(\'$\'))  # jason  本身并没有修改 可变类型与不可变类型
 print(s1)  # $$$jason$$$
 s2 = [1, 2, 3]
 print(s2.extend([11, 22, 33, 44, 55]))  # None 空
 print(s2)  # [1, 2, 3, 11, 22, 33, 44, 55]

来源:https://www.cnblogs.com/zq0408/p/15987385.html
本站部分图文来源于网络,如有侵权请联系删除。

未经允许不得转载:百木园 » 3.9python学习笔记

相关推荐

  • 暂无文章