今天是python基础语法入门第二天,大概总共会有四天左右。四天后就是对于python的numpy库的详细文章。那话不多说,我们开始。

目录

字符串详解

字符串独有功能

检测头尾字符

判断输入结果是否为数字

首尾删除

字符串中的替换

字符串的分割

字符串的连接

字符串的居中

字符串的公共功能

加、乘功能

索引功能(很重要)

求长度

一个很重要的函数range()

列表

定义

独有功能

创建空列表和追加

元素的指定位置插入

追加一个列表

元素的两种删除方法

清空列表

排序功能

字符串倒置

公共功能

len获取长度

方括号索引、步长

嵌套

for循环


字符串详解

字符串独有功能

检测头尾字符

startwith检测开头返回值为bool类型

endwith检测结尾返回值为bool类型

str = "My name is Anduin"
result1 = str.startwith("My")
result2 = str.endwith("in")
print(result1)#True
print(result2)#True

判断输入结果是否为数字

isdecimal返回值为bool类型

str = "12332"
print(str.isdecimel)#True

这里有一点需要注意的是有些文章上会让大家使用isdigit来判断,但是这个需要慎用。原因是因为如果输入为序号1(1外面一个圈的)isdigit也会判断为真返回true,这显然是我们不想看到的。

首尾删除

strip如果不填参数默认删除空格

lstrip删除开头指定内容

rstrip删除结尾指定内容

str = "   Hello   "
print(str.strip())#Helloprint(str.lstrip())#"Hello   "print(str.rstrip())"   Hello"str1 = str.strip()
#此时str1 = "Hello"
print(str1.strip("H"))#elloprint(str1.strip("o"))#Hellprint(str1.lstrip("H"))#elloprint(str1.rstrip("o"))#Hell

字符串中的替换

replace(A, B)用B替换A

str = "My namw is Anduin"
result = str.replace("Anduin", "AABB")
print(result)#My name is AABB

字符串的分割

split按照指定的字符分割字符串

和上面的rstrip一样,加上r会从右边开始执行

str = "msg|res|val"
result1 = str.split("|")
#["msg", "res", "val"]
result2 = str.split("|", 1)
#["msg", "res|val"]
result3 = str.rsplit("|", 1)
#["msg|res", "val"]

字符串的连接

datalist = ["My", "name", "is", "Anduin"]
v1 = "*".join(datalist)
print(v1)
#My*name*is*Anduin
v2 = "".join(datalist)
print(v2)
#MynameisAnduin

字符串的居中

center居中

ljust居左

rjust居右

以上三个函数都会帮用指定的符号补齐空白部分

str = "Anduin"
str1 = str.center(10, "*")
#**ANduin**
str1 = str.ljust(10, "*")
#Anduin****
str1 = str.rjust(10, "*")
#****Anduin

字符串的公共功能

加、乘功能

主要是字符串+字符串和整数*字符串

str = "Anduin"
print(# * str)
#AnduinAnduinAnduin
print(str + "yyds")
#Anduinyyds

索引功能(很重要)

str[a,b]表示取编号a<=x<b的值,且编号从0开始

str[a,b,c]表示取编号a<=x<b的间隔c值,且编号从0开始

在python中-1表示最后一个,相应的-2,-3,-4表示倒数第二,第三,第三个。

name = "anduin"
print(name[0] + name[1])
#an
print(name[-1], name[-2])  # 字符串只能通过索引取值,不能修改值
#niprint(name[0:2])
#anprint(name[2:])
#duinprint(name[:3])
#and# 步长 跳着取字符串内容
print(name[0::2])
#adiprint(name[::-1])
#niudna可以用来将字符串倒置

求长度

len获取字符串长度

name = "Anduin"
print(len(name))
#6

一个很重要的函数range()

#取0-n的值
range(10)  # [0,1,2,3,4,5,6,7,8,9]
#取1-10的值
range(1, 10)
#间隔为2取1-10
range(1, 10, 2)
#取一到10的值
range(10, 1, -1)

列表

定义

列表是有序可变的容器,可以存不同类型的元素。这里需要注意字符串是不可变的,列表是可变的。

我们可以发现,上面对字符串的操作都是生成了一个新的字符串而字符串本身不改变,但是对于列表的操作是改变其本身的。

独有功能

创建空列表和追加

append追加:在列表最后加入一个元素

#创建一个空列表
list = []
#列表的追加
list.append("锤子")
list.append("钟无艳")

元素的指定位置插入

insert可以在指定位置插入,该位置原名来的元素及其以后的元素依次向后移动。

如果插入位置很离谱比如:-1000,999等越界插入,不会报错,会相应在开头或者末尾插入。

area = ["艾泽拉斯", "暴风城", "王宫"]
area.insert(0, "冰冠堡垒")

追加一个列表

extend可以在指定列表后加上一个列表,将两个列表拼接起来(注意使用先后)

area = ["艾泽拉斯", "暴风城", "王宫"]
charictor = ["巫妖王", "阿尔萨斯", "女王"]
area.extend(charictor)
print(area)
#["艾泽拉斯", "暴风城", "王宫", "巫妖王", "阿尔萨斯", "女王"]

元素的两种删除方法

方法一:

使用remove删除列表中的指定元素

area = ["艾泽拉斯", "暴风城", "王宫"]
area.remove("艾泽拉斯")
#["暴风城", "王宫"]

方法二:

使用pop对指定位置进行删除。pop删除会返回删除的元素,效果如下:

area = ["艾泽拉斯", "暴风城", "王宫"]
item = area.pop(1)
#["艾泽拉斯", "王宫"] item = "暴风城"#如果没有指定删除位置,默认删除最后一个
area = ["艾泽拉斯", "暴风城", "王宫"]
item = area.pop()
#["艾泽拉斯", "暴风城"] item = "王宫"

清空列表

clear可以删除列表内所有的元素

area.clear()  # 清空列表

排序功能

sort可以对列表内的元素进行排序(默认从小到大,想要倒序请看下一条)。注意此处有两点提醒:1.尽量对只含有数字的列表排序2.被排序的列表内所有元素必须类型一致。

#从小到大排序
num_lsit = [12, 42, 75, 94, 23, 25, 423]
num_lsit.sort()

字符串倒置

reverse可以将列表颠倒,可以利用这个实现倒序

num_lsit = [12, 42, 75, 94, 23, 25, 423]
num_lsit.reverse()#尾变头, 头变尾
num_lsit.sort(reverse=True)#倒序排序

公共功能

len获取长度

类比上文字符串

方括号索引、步长

类比上文字符串,规则一致,这里只举例增加的功能:del 删除

#从2开始删除后面的
del list[2:]

嵌套

嵌套顾名思义就是在一个列表里存一个列表(列表内的元素可以为任意类型),下面我们来存储一组用户名和密码

user_list = []
user1 = ["anduin", "123456"]
user2 = ["alex", "654321"]
user3 = ["Marry", "888888"]
user_list.append(user1)
user_list.insert(0, user2)
user_list.insert(1000, user3)
print(user_list)

运行结果如图:

有了对于字符串和列表索引的基础,对于嵌套列表的索引我们可以直接看代码:

user_list = []
user1 = ["anduin", "123456"]
user2 = ["alex", "654321"]
user3 = ["Marry", "888888"]
user_list.append(user1)
user_list.insert(0, user2)
user_list.insert(1000, user3)
print(user_list[1])
print(user_list[-1])
print(user_list[1][0])
print(user_list[1][-1])
print(user_list[::2])

for循环

昨天我们学了while循环。for循环和while循环的主要区别在于:while循环适合次数不知道的循环,for循环适合次数已知的循环。

例如用户输密码,不知道输入多少次才能对那我们就用while循环,遍历已知个数的列表就用for循环。

"""
这里提供两种for循环遍历列表来解释for循环
"""
list = ["dog", "cat", "pig"]
for item in list:print(item)for i in range(len(list)):print(list[i])

第一种是设置一个item变量,一次等于list中每一个元素,打印该元素的复制

第二种是获取长度列表[0, 1, 2],用索引的 方法输出列表对应位置的元素

Python基础语法day02字符串详解和列表相关推荐

  1. python入门2——基础语法2——字符串详解

    目录 前言 字符串 拼接字符串 字符串索引 字符串切片 字符串不可变性 字符串大小转换方法 字符串分割.组合与移除 字符串定位与替换方法 总结 前言 字符串是 Python 中最常用的数据类型.我们可 ...

  2. 【Python基础】reduce函数详解

    转载请注明出处:[Python基础]reduce函数详解 reduce函数原本在python2中也是个内置函数,不过在python3中被移到functools模块中. reduce函数先从列表(或序列 ...

  3. python split函数 空格_最易懂的Python新手教程:从基础语法到代码详解

    导读:本文立足基础,讲解Python和PyCharm的安装,及Python最简单的语法基础和爬虫技术中所需的Python语法. 作者:罗攀 蒋仟 如需转载请联系华章科技 本文涉及的主要知识点如下: P ...

  4. python 字符转义_【课堂笔记】Python基础语法:字符串

    本文是<财务Python基础:字符串>视频的文字版笔记,供大家参考. Python中的字符串 字符串是以单引号'或双引号"括起来的任意文本.注意即使是数字,如果用引号引起来,那么 ...

  5. Python基本语法_运算符详解

    目录 目录 前言 软件环境 身份运算符 算术运算符 比较运算符 位移运算符 自变运算符 位运算符 逻辑运算符 成员关系运算符 Python真值表 最后 前言 在前面的博文介绍了Python的数据结构之 ...

  6. Python 基础语法day02

    Python标识符 在python里,标识符有字母.数字.下划线组成. 在python中,所有标识符可以包括英文.数字以及下划线(_),但不能以数字开头. python中的标识符是区分大小写的. 以下 ...

  7. 刻意练习:Python基础 -- Task13. datetime模块详解

    datetime模块 datetime 是 Python 中处理日期的标准模块,它提供了 4 种对日期和时间进行处理的类:datetime.date.time 和 timedelta. datetim ...

  8. Python基本语法_异常处理详解

    目录 目录 异常 异常类型 异常处理 触发异常raise 传递异常 assert语句触发异常 捕获异常tryexceptelse 捕捉多个异常 tryfinally语句 自定义异常 withas触发异 ...

  9. Python基础语法学习(字符串)

    1.字符串的输入: 对于input()函数,输入数字就可以直接输入,而对于字符串就必须要加单引号或者双引号才行,因为input()是把输入当成表达式来计算的! >>> num = i ...

最新文章

  1. text-size-adjust: none并没有什么用
  2. LeetCode-动态规划基础题-63. 不同路径II
  3. 138 条 Vim 命令神操作,非常齐全,建议收藏!
  4. 微软Exchange Server 2013 CU11更新已发布
  5. 使用UTL_FILE在oracle中读写文本数据
  6. Entity Framework Core 懒加载
  7. java作业 雏田的两个技能 类与对象
  8. MDP马尔可夫决策过程(二)
  9. Android - 返回上一个界面finish()方法
  10. css图片的相关操作
  11. 二叉树的构造及其前序,中序,后序遍历
  12. 远程过程调用(RPC)详解
  13. html怎么把字做成动画效果,用纯CSS实现文字的动态效果
  14. 生产日期当天算一天吗,生产日期当天算一天吗
  15. 听说,你还在抬头仰望星空?
  16. vscode之 wget下载文件报错:ERROR: cannot verify data.vision.ee.ethz.ch‘s certificate
  17. 华为无线设备WLAN QoS配置命令
  18. BUUCTF qwb2018_opm
  19. 【剑指Offer】个人学习笔记_46_把数字翻译成字符串
  20. 三国杀(1):VS2017 C/C++ lua tolua++ 编译 集成,及使用介绍

热门文章

  1. 百度、谷歌和雅虎反向链接的区别
  2. 成都双流区链家网租房python数据可视化
  3. Oracle行列互换总结
  4. [java]switch....case小练习:输入小写的char类型,并将之转为大写
  5. H3C 研发员工作经历[转] 不忘初心方得始终!
  6. Java并发编程(二)同步
  7. 控制期货开户保证金可以降低风险
  8. python中explode是什么意思_python中explode有什么用
  9. 蓝桥杯青少组 历年 真题题库
  10. 一个岔路口分别通向诚实国和说谎国