IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Python知识库 -> #科研筑基# python初学自用笔记 第二篇 -> 正文阅读

[Python知识库]#科研筑基# python初学自用笔记 第二篇

前言

? ? ? ?我的目标是加入自然语言处理实验室,学习自然语言处理的相关技术,而自然语言处理最常用的计算机语言就是python,所以在考核前有三次对python的培训,这篇笔记是第二次培训后总结的,知识密度比上次大了非常多,所以我也花了较大篇幅。

字符串

字符串基础

合并字符串

? ? ? ?要合并变量,就用加号来拼接,一般用于被引号扩起的两个字符串中间或两个不加引号的变量名,输出就可以把他们粘起来;

? ? ? ?值得注意的是,用加号合并的两个变量一定要是同类型的变量

#字符串的加法使用

print('GDU'+'FS') #合并字符串

a='GDU'
b='FS'
print(a+b) #合并变量

a='GDU'
print(a+'FS') #合并变量和字符串

#以上三种使用方法都能输出 GDUFS。

 

? ? ? ?也可以不用加号,啥符号也不加,字符串也会自动合并,但这样不可用于合并变量,也不可用于合并变量与字面值。

print('GDU''FS')

'''在print语句里可以直接写两个由引号括起来的字符串,
   这样输出,中间就没有空格,相当于将两个字符串粘连起来。'''

重复字符串

? ? ? ?字符串也可以用*来重复,比如3*'略',就会输出 略略略;

print(3*'略')
#输出就是 略略略

索引

? ? ? ?字符串支持索引来提取单个字符,也就是下标访问,在声明变量后,可以用 变量名[下标] 这样的格式来索引字符串中的一个元素。

word='GDUFS'
print(word[0]) #将输出 G
print(word[4]) #将输出 S

? ? ? ?要记住的是,第一个字符的索引是0,往正数索引就是从第一个往右排,往负数索引的话,最后一个字符的索引是-1,然后以此类推。

word='GDUFS'
print(word[-1]) #将输出 S
print(word[-5]) #将输出 G

? ? ? ?索引越界会报错,如果一个字符串有六个字符组成,那么索引的范围就是-6 ~ 5,超出这个范围就会报错。?

word='GDUFS'
print(word[-11])
print(word[100])
#以上两个索引都会报错,因为超出下标范围了。

切片?

? ? ? ?切片就是[start:end],会切到一个字符的右侧;

word=['G','D','U','F','S']
print(word[0:2])
'''会输出 ['G','D'],
   可以理解为是从'G'的左侧切到'U'的左侧。'''

? ? ? ?切片索引的默认值很有用,省略开始索引,就会默认其为0,省略结束索引,就默认切到字符串末尾,也就是最右端;

word='GDUFS'
print(word[:3]) #会输出 GDU
print(word[3:]) #会输出 FS

? ? ? ?还可以这样理解切片,索引指向的是字符之间 ,第一个字符的左侧标为 0,最后一个字符的右侧标为 n ,n 是字符串长度。

? ? ? ?切片中用负数索引,开始索引同样要比结束索引小,切出来的顺序不变,但切片索引不能同时出现正数和负数;

word='GDUFS'
print(word[-3,-1])
#会输出 UFS

? ? ? ?切片会自动处理越界索引,索引过小,会切到左端,索引过大,就会切到右端;

? ? ? ?不能使用索引或切片后再赋值,要用索引和切片来组成新的字符串,要创建一个新的字符串;越界会判错;

  • 成员运算符

  • ? ? ? ?in 和 not in;连接两个字符串,判断前面那个在不在后面那个里面,只会输出True或False;这个 字符串 成员运算符 字符串 的格式代表的就是一个布尔值。

  • word='GDUFS'
    print('G' in word) #会输出 True
    print('S' not in word) #会输出 False

字符串常用方法

长度?

? ? 用内置函数len()来计算返回字符串的长度;

word='GDUFS'
print(len(word))
#会输出变量word所存储的字符串的长度,也就是 5;

大小写转化

? ? ??.lower()?大写转小写;.upper()小转大写;

? ? ? 若里面没有可转的字母,就会输出False;

? ? ? 要注意的是,这里的转化是指一个过程,对字符串应用转化这一过程没有返回值;

word='GDUFS'
word.lower()
'''对字符串 GDUFS 做大写转小写的处理,
   只是一个处理过程,不能将这个过程赋值给另一变量'''
print(word)
#输出 gdufs
word.upper()#再对转小写处理过的word进行转大写处理;
print(word)
#输出 GDUFS
word='123'
print(word)
#因为字符串123中每个字符都不能转换大小写,所以会输出 False。

大小写判断 ?

? ? ? ?.isupper() 和 .islower()? 判断字符串中所有能区分大小写的字符是否全为大写或全为小写,因为会判断是True或者False,所以有返回值,可以直接在print()里用,也可以将其赋值给新变量;

word='GDUFS'
print(word.upper()) #输出 True 
print(word.lower()) #输出 False

拼接和分割?

? ? ? ?拼接用''.join()或"".join() 前面引号里是用于连接列表里每个字符串的东西,也可以什么都不写,这样就可以把那些字符串粘连在一起了;括号里面用列表,列表里的数据必须是字符串

text=['G','D','U','F','S']
print(''.join(text))
#输出 GDUFS
print(' '.join(text))
#输出 G D U F S
print('1'.join(text))
#输出 G1D1U1F1S

? ? ? ?分割用.split(),括号里用引号,引号里填写一个存在于原字符串里的字符,表示以这个字符为分割点,分割后这个字符就不存在了;引号里一般是空格,这样的话,输出的列表里就是原字符串里的各个语素;

sentence=input() #输入 G D U F S
print(sentence.split(' ')) #输出列表 ['G','D','U','F','S']

? ? ? ? 若要分割连在一起的字符串,则需要用强制类型转换,用 list() 直接将字符串转换为列表;

a='GDUFS'
b=list(a)
print(b) #输出列表 ['G','D','U','F','S']

去前后缀

? ? ? ? .strip()? 用于将字符串前后的空格去掉;

a="   GDUFS   "
print(a.strip()) #输出 GDUFS,前后没有空格

判断前后缀?

? ? ? ? .startswitch(),括号里填写一个带引号的字符,若该字符是原字符串的前缀字符,则输出True,否则就输出False;判断后缀的 .endswitch() 同理;

替换

用.replace('old','new'),就会将字符串里的old,换成new。例如

“abcdef”.replace("a","A")

就输出Abcdef;

字母判断? .isalpha() 若字符串中的所有字符都是字母或汉字,则判断为True,否则为False;

数值判断? .isnumeric()汉字数字算是数值;

数字判断? .isdigit(),判断像123这样的数字;

字母数字判断 ?.isalnum(),以上三者的结合体;

字符串格式化

? ? ? printf风格,在“”里面用到%占位符,后面要再用%引出(),里面填要放在占位符位置的字符;

? ? ? format风格,用{}作为占位符,后面是format而不是{};{}里面的数字表示字符在后面括号里面的顺序;

? ? ?f-string风格,在“”前加上f,里面直接用{}里面填上定义好的变量名;

列表

列表基础

列表的表示

? ? ? ?用方括号括起来,里面用逗号分隔开,例如[1,2,3,4]

? ? ? ?列表可以包含不同类型的元素,但一般要保持类型相同,注意字符要加引号,例如 ['G','D','U','F','S'];

? ? ? ?创建列表和字符串一样,需要列表名和赋值号,例如 text=[1,'G',2,'D'];

合并和重复?

? ? ? ?列表可以使用+来合并列表;可以用*来重复,但是 是重复元素而非列表,最后呈现的是元素在一个列表里重复,例如:

????????????????????????????????????????>>> print([233] * 3)

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? [233, 233, 233]

索引和切片?

? ? ? ? 列表也可以像字符串那样索引,只是索引出的不是单个字符,而是列表里对顺序的字符串或数字;列表也支持切片。

? ? ? ?列表可以通过索引和切片再赋值,改变列表里的相应元素;

? ? ? ?切片可以清空列表,如letters[:]=[ ]

列表的长度?

? ? ? ?用函数len()来统计列表的长度;

元素的包含?

? ? ? ?in和not in

嵌套列表

? ? ? ?可以在列表里填列表

列表赋值,浅复制,深复制

? ? ? ?自行了解

列表常用方法

增加

.append()? 在表末加一个元素,括号里面可以是数字或带引号的字符串;

.extend()? ?在表末增加其他列表中的值,在括号里直接写一个小列表也行,注意这样不是嵌套;

.insert()? 在列表里的指定位置插入,例如:

>>> fruits = [ "banana" , "apple" ]
>>> fruits.insert( 0 , "durian" )
>>> fruits
[ 'durian' , 'banana' , 'apple' ]

['durian', 'banana', 'apple']

删除

.pop()? 直接调用的话,默认是要删除列表里的最后一位,返回值是被删除的元素;也可以填入指定序号来删除;

.remove()? ?移除,移除表里某个值的第一个匹配项,例如:

>>> fruits = ['durian', 'banana', 'apple', 'orange']

>>> fruits.remove("orange")

>>> fruits

['durian', 'banana', 'apple']

修改

.reverse()? ?原地反转列表;

.sort()? ?列表排序,列表中都是数字的话,就从小到大排,都是字符串的话,就按照每个字符串的字符数量从小到大排;

后记

第二次的笔记终于总结完了,该写作业了!

  Python知识库 最新文章
Python中String模块
【Python】 14-CVS文件操作
python的panda库读写文件
使用Nordic的nrf52840实现蓝牙DFU过程
【Python学习记录】numpy数组用法整理
Python学习笔记
python字符串和列表
python如何从txt文件中解析出有效的数据
Python编程从入门到实践自学/3.1-3.2
python变量
上一篇文章      下一篇文章      查看所有文章
加:2022-10-22 21:11:19  更:2022-10-22 21:13:17 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/15 7:10:28-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码