Python入门课小记(一)

Python入门课小记(一)

双冒号的理解

在学习双冒号使用时借鉴了一位前辈的博客,博客中详细的介绍了双冒号的用法。在此浅谈一下自己的理解。博客链接:https://blog.csdn.net/u011771047/article/details/52259401
以字符串的索引为例(小怪也只学到了这里)。字符串基本格式是引号括起来的即为字符串,每一个字符为一个单元,对应独立的索引号,索引号从零开始。按索引号索引字符串中的字符,格式为[起始:结束:步长]。其中起始和结束没有什么难理解的,结束是到结束索引号的前一位而不是结束索引号。步长更形象的一种理解为进制,步长为3,即进制为三。理解上可以这样理解,但是专业的术语还是为步长。print("hello world"[::3]

字符串

学到字符串,知识点就有点多了。
字符串:以引号包围的有序的序列。字符串的最小单元是一个字符。(字符个人理解是两个东西,一个是字一个是符,字在编程语言中只有英文字母,符是数字、汉字、符号等其他的广义上的符号)
字符串的操作:
1.拼接:+、*

>>> print("abcd".join("12\n")*4)
1abcd2abcd
1abcd2abcd
1abcd2abcd
1abcd2abcd
>>> 

这里有2个需要注意的点:
(1)字符串只能插入到字符串类型的数据中。(可能相同类型的数据才能进行插入等的处理,亦或级别低的能被插入到级别高的数据类型中,反之不成立。)
(2)join的语法是把前面的数据插入到()中的每两个元素之间。即范例中的"12\n"室友三个元素“1”,“2”,“\n”,每两个之间都会插入一次,因此会形成与我预期的四列“1abcd2”不相同的结果。因此又会有一个新的问题,怎样才能用join与*的语法形成四列“1abcd2”的结果。
2.切分:split、rsplit、splitlines
切分是将字符串以切分的元素为界将原字符串切成几个部分,界限的元素被删除。
切分的基本格式:“A”.split(B,C)
A:被切分的字符串
.split():切分的语法
B:界限元素
C:切分次数

>>> print("hello world".split("l",2))
['he', '', 'o world']
>>> 

注:行切分是以行为界限将原字符串切开,不需要在写界限元素,也不能写切分次数。
3.统计:find、rfind、index、rindex、count
find 从左开始查询目标元素,返回值是元素的索引号。若无查询元素返回-1
index从左开始查询目标元素,返回值也是元素的索引号,无查询元素报错。
前缀r是从右向左。
count是计数目标字符串中有几个需要统计的元素,返回值是个数。

>>> print("hello world".find("l",3))
3
>>> print("hello world".find("l",2))
2
>>> print("hello world".find("l"))
2
>>> print("hello world".find("l",6))
9
>>> print("hello world".find("l",11))
-1

find括号中的第二个数字什么意思??
4.替换:replace
将字符串中的某一元素替换为另一元素。
“A”.replace(B,C,D)

print("hello world".replace("l","q",3))
heqqo worqd

能不能用索引号替换
5.变形:upper、lower、title、swapcase、capitalize
upper 大写;lower 小写;swapcase 大小写互换;capitalize 字符串首字符大写(首字符不是字母的则不作为);
title 连续字母的第一个字母大写

>>> print("asd12asdf&&sadf22asd".title())
Asd12Asdf&&Sadf22Asd
>>> 

6.判断:isupper、islower、istitle、isalnum、isalpha、isdigit、startswith、endswith
判断的返回值是True或者False
isuper、islower、istitle :是否upper、是否lower、是否title;
isalnum:是否全为数字、字母;

>>> print("12asdf&&sadf22asd".isalnum())
False
>>> print("12asdfsadf22asd".isalnum())
True
>>> 

isalpha:是否全为字母;

>>> print("12asdfsadf22asd".isalpha())
False
>>> print("asdfsadfasd".isalpha())
True
>>> 

isdigit:是否全为数字;

>>> print("12asdfsadf22asd".isdigit())
False
>>> print("1222".isdigit())
True
>>> 

startswith、endswith:是否以。。。开始、结束
“A”.startswith(“B”,C,D)
A:被判断的字符串
B:判断的基准元素
C、D:起始、结束位置的索引号

>>> print("hello world".startswith("h"))
True
>>> print("hello world".startswith("h",3))
False
>>> print("hello world".startswith("h",3,11))
False
>>> 

今天的学习任务大概就这些了,留下了一下部分问题,如果有大佬愿意解答感激不尽。加油!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值