Python字符串元组字典
Python字符串元组字典
字符串
用来存储用户名、密码的数据
字符串格式:
- 双引号或者单引号中的数据,就是字符串
name=’chenduxiu’
#或者
name="zhendexiu"
字符串输出
- 格式控制符 “%s”
例:
name=”xiaoming“
profession ='学生'
address="海淀区神州科技园B座2层"
print '-'*40
print("姓名:%s"%name)
print("职业:%s"%position)
print ("地址:%s"%address)
print ('-'*40)
字符串输入
输入的内容 = input(“需要输入的内容”)
例:通过键盘输入用户名密码
注意:python2的输入为 raw_input()下标和切片
- 下标索引:就是指的编号,类似超市储物柜的编号,通过编号就能找到对应的东西
例如:
name="xiaoming"
aaa=0
count = len(name)
while aaa < count:
print(name[aaa])
aaa+=1
切片
- 字符串,列表,元组都支持切片操作
语法
若中间位(结束)不给坐标索引,则默认取到该数,若明确索引,则左闭右开规则
[起始:结束:步长] 区间位置:左闭右开 所取数据为 起始 起始+步长 ··· 结束
例:
name=‘xiaoming’
print(name[0:2])
打印结果 "xi"
name='0123456789'
print(name[0:2])
#从第二个取到最后
print(name[2:])
#从头开始取,直到索引值为3的位置(不包括该元素)
print(name[:3])
#从索引值为2的位置开始取,直到倒数第一个(不包括倒数第一个)
print(name[2:-1])
#从头开始取,每两个切出一个
print(name[0::2])
#倒序的内容输出
print(name[::-1])
#倒序切出索引5到索引值1中间的数据
print(name[5
-1])
#倒序切出最后索引位9到索引3中间的数据,左闭右开
print(name[
-1])
字符串常见操作
find/rfind
检查str是否包含在str1中,如果是返回开始的索引值,否则返回-1
str1.find()
str1=”good good study,day day up”
index = str1.find(“stu”)
print(index)index/rindex
跟find()方法一样,只不过目标字符串如果不在要查找的字符串中会报一个异常
count
返回str在目标字符串中start-end之间出现的次数
str1=”good good study,day day up”
print(str1.count(“good”))replace
把str1中指定的字符串”good”,用“222”进行替换,最多替换2次
str1=”good good study,day day up”
print(str1.count(“good”))
str2 = str1.replace(“good”,”222”,2)
print(str2)split
以” “为分割符切片str1
str1=”good good study day day up”
array = str1.split(“ “)
print(type(array))
print(array)将所有数据依照“ ”切2次分成3组数据,前2个是2组数据,余下的是一组数据
如果切的次数大于字符数则默认分组为6组
print(str1.split(“ “,2))capitalize
把字符串的第一个字符大写
print(str1.capitalize())title
把字符串中的每一个单词的首字母大写
print(str1.title())startswith
检查字符串是否以指定字符串开头,
是则返回True,否则返回False
例:判断是否为有效网址endswith
检查字符串是否以指定字符串结尾,是则返回True,否则返回False
例:判断是否为有效邮箱lower
转换字符串中所有的大写字符为小写
upper
转换字符串中所有的小写字符为大写
ljust
返回一个原字符串左对齐,并使用空格填充至长度width的新字符
str1 = “hello”
print(str1.ljust(10))字符串左对齐并且以*填充右边直至10个字符长度
print(str1.ljust(10,’*’))
rjust
返回一个原字符串右对齐,并使用空格填充至长度width的新字符
str1 = “hello”
print(str1.rjust(10))center
返回一个原字符串居中对齐,并使用空格填充至长度width的新字符
str1 = “hello”
print(str1.center(10))lstrip
删除目标字符串左边的空格
str1 =” hello “
print(str1.lstrip())rstrip
删除目标字符串右边的空格
str1 =” hello “
print(str1.rstrip())strip
删除目标字符串两边的空格
str1 =” hello “
print(str1.strip())rfind
类似于find()函数,不过是从右边开始查找
rindex
类似与index()函数,不过是从右边开始查找
partition
以给定的字符串str切整个字符串
把目标字符串分割成三部分 str前,str以及str后,得到一个tuple(元组)
str1=”nihaoma”
str1.partition(“hao”)
(‘ni’, ‘hao’, ‘ma’)rpartition
从右边开始,把目标字符串分割成str前,str以及str后三部分,得到一个tuple(元组)
str1=”nihaoma”
str1.partition(“hao”)
(‘ni’, ‘hao’, ‘ma’)splitlines
将目标字符串按照行进行分割,返回一个列表
str1 = “Hello\nWorld”
print(str1.splitlines())
运行结果:
[‘Hello’, ‘World’]isalpha
判断目标字符串中是否所有的字符都为字母,返回True,或者False
str1 = “123Hello”
print(str1.isalpha())isdigit
判断目标字符串中是否所有的字符都为数字,返回True或者False
str1 = “123Hello”
print(str1.isdigit())isalnum
如果字符串中都是字母或者数字则返回True,否则返回False
str1=”abc123”
print(str1.isalnum())isspace
如果字符串中只包含空格,则返回True,否则返回False
join
将字符串或者列表,元组中的每个元素(字符)使用指定字符连接起来
li=[“one”,”two”,”three”]
str2=”_”
str2 = str2.join(li)
print(str2)
列表介绍
列表语法
引入:
- 如何存储班级中所有同学的名字?
语法格式:
names=[“李大钊”,”陈独秀”,”蔡元培”,”陈佩斯”]
注意:比C语言中的数组功能更强大,列表中的元素可以为不同类型
list1=[10,”人”,2.5,True]
访问列表中的元素
设置值
list1[0] = 100
获取值
print(list[0])
列表的循环遍历
列表CRUD
增
append
通过append向指定列表追加元素
例:
list2 =[“one”,2,”san”]
list2.append(“four”)
print(list2)结果:[‘one’, 2, ‘san’, ‘four’]
extend
通过extend可以将一个列表中的元素逐个添加到另外一个列表中
例:
l1=[1,2]
l2=[3,4]
l1.extend(l2)
print(l1)结果:[1, 2, 3, 4]
insert
insert(index,object)在指定的位置处插入元素object
l1=[1,2]
l2=[3,4]
l1.extend(l2)
print(l1)结果:[1, [3, 4], 2]
查
删
改
直接通过下标来修改元素
例:
l1=[1,2]
l1[0] = 100
print(l1)
结果:[100,2]排序以及列表反转
sort排序使用时,元素的类型必须一致
sort方法将list按特定顺序进行排列,默认为由小到大,参数reverse=True可改为倒序,由大到小
例:
l1 = [2,4,1,9,23]
l1.sort()
print(l1)结果:[1,2,4,9,23]
l1.sort(reverse=True)
print(l1)结果为:[23,9,4,2,1]
反转方法: reverse()
列表的嵌套
概念
一个列表中的元素,又是一个列表
嵌套列表的遍历
l1=[[1,2],4,[5,6]]
for l in l1:if type(l) == list:
for ll in l:
print(ll)
else:
print(l)
print("-"*10)
练习
循环录入3个学生信息(包括name,age)
使用嵌套列表完成学生信息的存储
元组
元组概念
Python的元组与列表类似,不同之处在于元组的元素不能修改地址,但是可以修改引用地址中的值,例如修改元祖中的字符串某一字段的值
元组使用“()”
列表使用”[]”操作
访问
t=(1,2,3)
print(t[0])
修改或者删除元素的话会报错:
t[0]= 10
删除报错:
t.pop()
但是可以变向进行删除
tuple->list(进行删除操作)->tuplet=(123,”abc”,[“a”,”b”,”c”])
t[2][2]=”qqqq”
打印结果为:(123, ‘abc’, [‘a’, ‘b’, ‘qqqq’])
字典
通过{}来标识 通过 []/get() 来取值
创建set的方式 set是没有值的字典 set = {1,2,3,4}
set添加数据 set.add()
字典的引入
如何存储将多个国家的简称及名字完成对应的存储?
例如: CN:中国 JP:日本 US:美国
country = {“CN”:”中国”,”JP”:”日本”}
字典中元素的访问:
字典的常见操作1
删除元素
字典的常见操作2
字典的遍历
所有key的遍历
stu={‘name’:’xiaoming’,’age’:19}
for key in stu.keys():print(key)
所有value的遍历
stu={‘name’:’xiaoming’,’age’:19}
for value in stu.values():print(value)
所有item的遍历
stu={‘name’:’xiaoming’,’age’:19}
for item in stu.items():print(item)
所有key和value的遍历
stu={‘name’:’xiaoming’,’age’:19}
for key,value in stu.items():print(type(value))
print("%s=%s"%(key,value))
公共方法
公共运算符
‘+’
作用:合并、连接
例:str1=”hello”+”world”
结果:”helloworld“
list1=[1,2]+[3,4]
结果:[1, 2, 3, 4]
例:tuple1=(1,2) + (3,4)
结果:(1,2,3,4)‘*’
作用:复制
例: ‘hello’ 2
结果: ‘hellohello’
例: [1,2] 2
结果:[1,2,1,2]
例:(1,2) * 2
(1,2,1,2)in
作用:元素是否存在
例:
result = ‘123’ in ‘HelloWorld123’
print(result)
result= 1 in [1,2]
print(result)
result = 2 in (1,2)
result = ‘name’ in {‘name’:’xxx’,’age’:12}
print(result)not in
作用:元素书否不存在,用法跟in 一样
python的内置函数
引用的使用
什么是引用
windows中的快捷方式
家庭地址非引用类型案例:
a = 10
b = a
print(id(a))
print(id(b))
b=100
print(a)
print(b)
print(id(a))
print(id(b))引用类型案例:
list1 = [1,2,3]
list2 = list1
print(id(list1))
print(id(list2))
list2[0]=100
print(list1)
print(list2)
print(id(list1))
print(id(list2))
还没有评论,来说两句吧...