1:字符串类型转换

 

 num = 100

 num2 = ""

 #num是整数类型的值,num2是字符串类型的值,如果把他们两个的类型转换下呢?

 int(num2)  #int 整形成整数

 str(num)  #转换成字符串

2:组成字符串的两种方式

 #This One

 a = "lao"
b = "wang"
c = "zhao" #如果我们想打印 “laozhao”和“laowang”改如何打印 d = a + b #这样打印d的结果是:laowang
e = a + c #这样打印e的结果是:laozhao #如果我们想打印 “===laowang===” f = "===" + a + b + "===" #这样是不是很麻烦 #This Two 我们试试第二种方法 g = "===%s==="%(a+b)

3:字符串中的下标

字符串的下标是什么呢?就像我们去坐火车每一节车厢的座位号,这个及就类似于我们的下标

我们定义一个字符串,name = “ABCEDF” , 里面的adcdef就类似于座位号,每一个字符都有一个下标,注意Python的下标是从0开始计算的,我们来看

中括号里面的数值,我们称之为下标

如果你想打印一个变量里面的最后一个字符,那请问你如何获取变量里一共写了多少字符?

len :测试长度

比如 : 测试name的变量      len(name)

如何获取变量中最后一个字符呢?

name[-1]

4:切片、字符串的逆序

切片:取一片内容。就像一块羊肉,切一片的意思。

注意:切片的取值,取不到截至点的值,只能取到截至点前的一位数字

如果你冒号后面没有写截至点的话,那就默认显示后面所有的字符,我们来试试

如果我们想从第二个数字取到倒数第二个数字,我们应该如何操作?

假如我想取  name = "abcdefABCDEF" 中 ceACE我该如何操作,就是我跳着取值该如何操作?

语法为 :name[起始位置:终止位置:步长]

我们在来说说逆序,也就是倒序

上面的方法也可以写成:

我怎么去判断,冒号前面是从左边开始切片,还是右边呢?就看后面的步长,如果是 -1的话,冒号的左边变成了右边,而冒号的右边变成了字符串的最左边。

5:字符串的常见操作

find : 查找

比如:我们写一个字符串

6是什么意思呢 ? 指查找的内容在字符串的第几位,从0开始world的w是在6位

我输入错误的时候,为什么程序也会显示出来。如果找到了就会显示出位置数,如果不是,那就显示-1,找不到信息就显示 -1.

运行find的时候,找的顺序就是从左边开始找,那如果我们想从右边也就是后面开始找的话, 那我们该怎么写?

index也是索引的意思,也可以用来查找,但是唯一不同的是,find查找不到也会返回信息,index查找不到无法返回信息。除了找不到的时候功能显示不一样,其他的都一样。

  count:查看在字符串中该字符一共出现几次

  replace:替换字符串中的字符。相当于replace的返回值,愿字符串不变

我们再来试一次

那如果我们只想修改一个呢?,后面的1表示个数,你想修改的个数是几。

split:切割

  我们把name变量里面的字符串用split来分割,按照空格来切割

capitalize:把字符串的第一个字符大写

title:把所有字符串的首字母大写

startswith:检查输入的信息是否与字符串的开头相同,如果相同就返回True,如果不是就返回False

endwhith:检查输入的信息是否与字符串的末尾相同,如果相同就返回True,如果不是就返回False

lower:把字符串中所有的大写字符串成小写

upper:把字符串中所有的小写字符串成大写

ljust:靠左居中

rjust:靠右居中

center:居中显示,居中的长度用户自己定义,center(50),前后各50

lstrip:删除左边的空白字符

rstrip:删除右边的空白字符

strip:删除两端的空白字符

rfind:类似于find()函数,不过是从右边开始查找

rindex:类似于index()函数,不过是从右边开始查找

partition:讲字myStr字符串中的,willam前,willam,和willam后分为三段显示出来

可以自己尝试在里面放置两个同样的字符,用partition和rpartition来看看什么效果

splitlines:按照行分隔,返回一个包含各行作为元素的列表

isalpha:判断是否为字母

isdigit:判断是否为数字

isalnum:判断是否为字母和数字

isspace:判断是不是纯空格,如果是返回True,如果不是返回False

join:构建一个新的字符串

6:列表

如果我们想把公司的任意一个人定义成一个变量,是没问题的,那我们想把每个部门的每个人都定义呢,也可以这样做,那会比较麻烦,这样用列表就比较简单了

那我们应该如何对列表进行 增删改查?

我们先来说添加一个名字到列表里

语法 : append

那如果我们想在指定位置插入一个名字呢?

语法:insert。前面的0代表你想插入的位置,后面的威廉,代表你想插入的姓名

append和insert的区别是一个只能在最后插入字符,一个是可以在任何位置插入字符

我们再说一个插入字符的方法

还有没有其他办法 ?

语法:extend

我们再来说说如果删除列表的内容

pop():删除列表中的最后一个,把列表中的最后一个字符拿出来,相当于删除

如果我们想删除里面的任意一个名字的时候,我们该如何操作?

语法:remove。根据内容来删除

还有一种方法和remove差不多。

语法:del。根据下标来删除

说完删除我们在来说说如何更改内容

如果我们进行查询的话,该怎么操作

语法:in  或  not in

7:字典

什么是字典?字典其实和变量和列表都是一样的,来存储内容,只不过语法不一样

字典是: infor = {键:值,键:值,键:值}

字典如何增删改查呢?

1、增加一个Key:Value

#先定义一个字典
infor = {'name':'willam','age':18,'addr':'Henan'} infor
{'name': 'willam', 'age': 18, 'addr': 'Henan'} #下面的命令事进行添加一个值
infor['QQ'] = 10086
infor
{'name': 'willam', 'age': 18, 'addr': 'Henan', 'QQ': 10086}

2、修改字典的信息

 infor
{'name': 'willam', 'age': 18, 'addr': 'Henan', 'QQ': 10086}
#字典里面已经有一个QQ信息了,我们再来输入一个试试
infor['QQ'] = 10010
infor
{'name': 'willam', 'age': 18, 'addr': 'Henan', 'QQ': 10010}
#如果字典里面已经存在你要添加的值,会变成修改字典内该值

3、删除字典信息

 infor
{'name': 'willam', 'age': 18, 'addr': 'Henan', 'QQ': 10010} #del 删除字典内信息,我们先来删除QQ看看效果
del infor['QQ'] infor
{'name': 'willam', 'age': 18, 'addr': 'Henan'} #再次查看字典,QQ已经没了,我们想再次删除QQ试试。报错了,如果字典内没有你想删除的信息,就会报错
del infor['QQ']
Traceback (most recent call last):
File "<pyshell#47>", line 1, in <module>
del infor['QQ']
KeyError: 'QQ'

4、查询字典信息

 infor
{'name': 'willam', 'age': 18, 'addr': 'Henan'} #和列表差不多,我们根据字典内的key来进行查找信息
infor['name']
'willam'
infor['age']
18
#但是如果我们输入的值没有的话,他就会报错,怎样查看这个值是否存在在字典内而不报错呢?
infor['QQ']
Traceback (most recent call last):
File "<pyshell#56>", line 1, in <module>
infor['QQ']
KeyError: 'QQ'
#这样写就不会报错了
infor.get('QQ') infor.get('name')
'willam'
infor.get('age')
18

字典的增删改查:

#增加

xxx['Key'] = Value

#删除

del xxx['key']

#修改

xxx[已存在的key] = new_value

#查询

xxx.get('key')

8、While、For循环遍历列表

#while 循环遍历
num = [11,22,33,44,55] i = 0 while i<5:
print(num[i])
i += 1 #for 循环遍历 num = [11,22,33,44,55] for temp in num:
print(temp) #如果num里面包含很多很多的数值的时候,我们可以这样操作 num = [11,22,33,44,55,66,77,88,99,10,111,222,333,444,555] i = 0 temp_num = len(num) while i<temp_num:
print(num[i])
i += 1

9、for-else的应用

card_name = [{'name':'老王','age':18,'addr':'河南'},{'name':'老李','age':20,'addr':'河南'}]

find_name = input("请输入你需要查找的姓名:")

for temp in card_name:
if temp['name'] == find_name:
print("找到了...")
break
else:
print("查无此人")

10、列表的append、extend区别

#extend
a = [11,22,33]
b = [44,55] a.extend(b) print(a) [11, 22, 33, 44, 55] #append
a = [11,22,33]
b = [44,55] a.append(b) print(a) [11, 22, 33, [44, 55]] #append是把整个列表都添加进去,而extend是把列表里的值一个一个的添加进去,所以要区分开来。一个事整体添加,一个是合并。

11、字典的常见操作、遍历

 infor = {'name':'willam','age':18,'addr':'Henan'}

 #我们使用xxx.keys()可以查看字典内包含了多少key

 infor.keys()
dict_keys(['name', 'age', 'addr']) #同样的方式,我们也可以进行value的查询 infor.values()
dict_values(['willam', 18, 'Henan']) #我们也可以使用if进行查询有没有该信息,当然infor.get('')也是可以的 if 'qq' in infor.keys():
print("有QQ信息") if 'name' in infor.keys():
print("有name信息") 有name信息
if 18 in infor.values():
print("有") 有 #我们可以用以下命令来查看infor字典内所有的key
for temp in infor.keys():
print(temp) name
age
addr
#用一下命令来查看infor字典内所有的value
for temp in infor.values():
print(temp) willam
18
Henan
#items查看字典内所有的key和value,注意输出的结果是元祖
infor.items()
dict_items([('name', 'willam'), ('age', 18), ('addr', 'Henan')]) for temp in infor.items():
print(temp) ('name', 'willam')
('age', 18)
('addr', 'Henan')
#这样写更美观点
for temp in infor.items():
print('key=%s,value=%s'%(temp[0],temp[1])) key=name,value=willam
key=age,value=18
key=addr,value=Henan #下列的操作是:拆包,把元祖内的值拆开分给c,d
a = (11,22) b = a b
(11, 22) c,d = a #先计算等号右边,a的值第一个分配给左边的c,第二个分配给左边的d,依次往后推,这种方式叫作 拆包 c
11
d
22
#我们再来修改下上面的items去里面的值 for A,B in infor.items():
print("key=%s,value=%s"%(A,B)) key=name,value=willam
key=age,value=18
key=addr,value=Henan

Python基础知识(3)的更多相关文章

  1. Python开发【第二篇】:Python基础知识

    Python基础知识 一.初识基本数据类型 类型: int(整型) 在32位机器上,整数的位数为32位,取值范围为-2**31-2**31-1,即-2147483648-2147483647 在64位 ...

  2. python基础知识(二)

    以下内容,作为python基础知识的补充,主要涉及基础数据类型的创建及特性,以及新数据类型Bytes类型的引入介绍

  3. python 基础知识(一)

    python 基础知识(一) 一.python发展介绍 Python的创始人为Guido van Rossum.1989年圣诞节期间,在阿姆斯特丹,Guido为了打发圣诞节的无趣,决心开发一个新的脚本 ...

  4. python基础知识讲解——@classmethod和@staticmethod的作用

    python基础知识讲解——@classmethod和@staticmethod的作用 在类的成员函数中,可以添加@classmethod和@staticmethod修饰符,这两者有一定的差异,简单来 ...

  5. python爬虫主要就是五个模块:爬虫启动入口模块,URL管理器存放已经爬虫的URL和待爬虫URL列表,html下载器,html解析器,html输出器 同时可以掌握到urllib2的使用、bs4(BeautifulSoup)页面解析器、re正则表达式、urlparse、python基础知识回顾(set集合操作)等相关内容。

    本次python爬虫百步百科,里面详细分析了爬虫的步骤,对每一步代码都有详细的注释说明,可通过本案例掌握python爬虫的特点: 1.爬虫调度入口(crawler_main.py) # coding: ...

  6. python 爬虫与数据可视化--python基础知识

    摘要:偶然机会接触到python语音,感觉语法简单.功能强大,刚好朋友分享了一个网课<python 爬虫与数据可视化>,于是在工作与闲暇时间学习起来,并做如下课程笔记整理,整体大概分为4个 ...

  7. python基础知识小结-运维笔记

    接触python已有一段时间了,下面针对python基础知识的使用做一完整梳理:1)避免‘\n’等特殊字符的两种方式: a)利用转义字符‘\’ b)利用原始字符‘r’ print r'c:\now' ...

  8. Python基础知识(五)

    # -*- coding: utf-8 -*-# @Time : 2018-12-25 19:31# @Author : 三斤春药# @Email : zhou_wanchun@qq.com# @Fi ...

  9. Python基础知识(Basic knowledge)

    Python基础知识(Basic knowledge) 1.认识Python&基础环境搭建 2.Python基础(上) 3.Python基础(中) 4.Python基础(下) 5.Python ...

  10. Python 基础知识(一)

    1.Python简介 1.1.Python介绍 python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,吉多·范罗苏姆(中文名字:龟叔)为了在阿姆斯特丹打发时 ...

随机推荐

  1. csu1116 Kingdoms 最小生成树-枚举状态

    题目链接: csu 1116 题意: 有一幅双向图连接N个城市(标号1~n,1表示首都)  每一个城市有一个价值W. 地震摧毁了全部道路,现给出可修复的m条道路并给出修复每条道路所需的费用 问在总费用 ...

  2. Json的简单介绍和解析

    Json:JavaScript对象表示法(JavaScript Object Noatation) Json是存储和交换文本信息的语法,类似XML.它采用键值对的方式来组织,易于人们阅读和编写,同时也 ...

  3. Intellij IDEA debug jar包

    打成jar包 mvn clean install -Dmaven.test.skip=true jar包保存在target目录下 启动jar Terminal控制台执行下面的命令,启动jar java ...

  4. RabbitMQ Connector

    https://ci.apache.org/projects/flink/flink-docs-master/dev/connectors/rabbitmq.html RabbitMQ Source ...

  5. 在无代码文件的aspx文件中添加类、函数和字段的方法

    大家都知道,在开始WebForm程序时,一个WebForm由.cs代码文件与.aspx页面文件组成.在aspx文件中可以嵌入C#代码,但无法在aspx的嵌入C#代码中定义类,函数和字段等.这样,就限制 ...

  6. Codeforces Round #346 (Div. 2) E. New Reform

    E. New Reform time limit per test 1 second memory limit per test 256 megabytes input standard input ...

  7. 小玩Spring Boot

    Spring Boot是Spring Mvc的升级版 号称是替代者 也是微服务的微框架基础 有3启动方式 用IntelJ IDEA 生成spring boot工程 1.有个入口类 可以直接run as ...

  8. p1694猴子 并查集

    有n只猴子,第一只尾巴挂在树上,剩下的n-1只,要么被其他的猴子抓住,要么抓住了其他的猴子,要么两者均有. 当然一只猴子最多抓两只另外的猴子,因为只有两只猴爪子嘛.现在给出这n只猴子抓与被抓的信息,并 ...

  9. Web前端性能优化经验分享

    最近一直有给新同学做前端方面的培训,也有去参与公司前端的招聘,所以把自己资料库里面很多高效且有用的知识做了些 规整分类,然后再分享一篇关于前端优化方面的总结.而且春节一过就又是招聘的高峰期了,在校的. ...

  10. fuse的write过程到底是怎么样的,128KB的buffer怎么用?

    1. 在fuse/lib/fuse_kern_chan.c中有一个buffer设置 #define MIN_BUFSIZE 0x21000 //十进制132×1024  //为何不是128? 下面有一 ...