码迷,mamicode.com
首页 > 编程语言 > 详细

Python基础三

时间:2018-01-23 20:32:15      阅读:162      评论:0      收藏:0      [点我收藏+]

标签:序列   str   函数   取字符串   条件   格式化   jdk   计算   存储   

一、引子

1.什么是数据?

  x=10,10是我们要存储的数据

2.为何数据要分不同的类型

  数据是用来表示状态的,不同的状态就应该用不同的类型的数据去表示

3.数据类型

  数字

  字符串

  列表

  元组

  字典

  集合

 

二、基础数据类型

1.数字int

数字主要是用于计算用的,使用方法并不是很多,就记住一种就可以:

#bit_length() 当十进制用二进制表示时,最少使用的位数
v = 11
data = v.bit_length()
print(data)

2.布尔值bool    

布尔值就两种:True,False。就是反应条件的正确与否。

真   1   True。

假   0   False。    

int ------> bool     0:False  非零:True

bool----->True      T----->1   F----->0

str------->bool  非空True   空就是False 

s=abc
print(bool(s))

bool----->str  str(True)  str(False)

print(str(True),type(str(True)))

While 1while true执行效率高

 

3.字符串str

一、字符串的索引与切片

索引即下标,就是字符串组成的元素从第一个开始,初始索引为0以此类推。  

a = ABCDEFGHIJK
print(a[0])
print(a[3])
print(a[5])
print(a[7])

切片就是通过索引(索引:索引:步长)截取字符串的一段,形成新的字符串(原则就是顾头不顾腚)。

a = ABCDEFGHIJK
print(a[0:3])
print(a[2:5])
print(a[0:]) #默认到最后
print(a[0:-1]) #-1就是最后一个
print(a[0:5:2]) #加步长
print(a[5:0:-2]) #反向加步长

二、字符串常用方法

 captalize、swapcase、title

1 a = ABCDEFGHIJK
2 print(a.capitalize()) #首字母大写
3 print(a.swapcase()) #大小写翻转
4 msg=egon say hi
5 print(msg.title()) #非字母隔开的部分,首字母大写,其它小写

 

upper  全部大写

lower  全部小写

a=Lao Dao Ba Zi
print(a.upper())
print(a.lower())
1 code=aeDb
2 your_code=input(请输入验证码:)
3 if your_code.upper()==code.upper():
4     print(输入正确)
5 else:
6     print(请重新输入)

 

center 内同居中,总长度,空白处填充

a=Lao Dao Ba Zi
ret2 = a.center(20,"*")
print(ret2)

 

expandtabs

a2 = "hqw\t"
#\t前面的补全
# 默认将一个tab键变成8个空格,如果tab前面的字符长度不足8个,则补全8个,如果tab键前面的字符长度超过8个不足16个则补全16个,以此类推每次补全8个。
ret4 = a2.expandtabs()
print(ret4)

 

count 数字符串中的元素出现的个数

a=Lao Dao Ba Zi
ret3 = a.count("a",0,4) # 可切片
print(ret3)

 

startswith  判断是否以...开头
endswith  判断是否以...结尾

a4 = "dkfjdkfasf54"
ret4 = a4.endswith(jdk,3,6)  # 顾头不顾腚
print(ret4)  # 返回的是布尔值
ret5 = a4.startswith("kfj",1,4)
print(ret5)

 

find  寻找字符串中的元素是否存在

a4 = "dkfjdkfasf54"
ret6 = a4.find("fjdk",1,6)
print(ret6)  # 返回的找到的元素的索引,如果找不到返回-1
ret61 = a4.index("fjdk",4,6)
print(ret61) # 返回的找到的元素的索引,找不到报错。

 

split  以什么分割,最终形成一个列表此列表不含有这个分割的元素

ret9 = title,Tilte,atre,.split(t)
print(ret9)
ret91 = title,Tilte,atre,.rsplit(t,1)
print(ret91)

 

format  格式化输出

res={} {} {}.format(egon,18,male)
print(res)
res={1} {0} {1}.format(egon,18,male)
print(res)
res={name} {age} {sex}.format(sex=male,name=egon,age=18)
print(res)

 

strip  去除字符串前后两端的空格,换行符,tab键等

name=*egon**
print(name.strip(*))
print(name.lstrip(*))
print(name.rstrip(*))

 

replace  替换

name=alex say :i have one tesla,my name is alex
print(name.replace(alex,SB,1))

 

len  字符串的长度

s=alex
print(len(s))

 

is系列  

name=jinxin123
print(name.isalnum()) #字符串由字母或数字组成
print(name.isalpha()) #字符串只由字母组成
print(name.isdigit()) #字符串只由数字组成

 

三、元组tuple

元组被称为只读列表,即数据可以被查询,但不能被修改,所以,字符串的切片操作同样适用于元组。例:(1,2,3)("a","b","c")

四、列表list

列表是python中的基础数据类型之一,其他语言中也有类似于列表的数据类型,比如js中叫数组,他是以[]括起来,每个元素以逗号隔开,而且他里面可以存放各种数据类型比如:

li = [‘alex’,123,Ture,(1,2,3,’wusir’),[1,2,3,’小明’,],{‘name’:’alex’}]

列表相比于字符串,不仅可以储存不同的数据类型,而且可以储存大量数据,32位python的限制是 536870912 个元素,64位python的限制是 1152921504606846975 个元素。而且列表是有序的,有索引值,可切片,方便取值。

 

 五、字典

字典是python中唯一的映射类型,采用键值对(key-value)的形式存储数据。python对key进行哈希函数运算,根据计算的结果决定value的存储地址,所以字典是无序存储的,且key必须是可哈希的。可哈希表示key必须是不可变类型,如:数字、字符串、元组。

  字典(dictionary)是除列表意外python之中最灵活的内置数据结构类型。列表是有序的对象结合,字典是无序的对象集合。两者之间的区别在于:字典当中的元素是通过键来存取的,而不是通过偏移存取。

 

六、 集合

set={1,‘alex‘,True}

 

三、其他(for,enumerate,range)

for循环:用户按照顺序循环可迭代对象的内容。

msg = 老男孩python是全国范围内最好的python培训机构
for item in msg:
    print(item)

li = [alex,银角,女神,egon,太白]
for i in li:
    print(i)

dic = {name:太白,age:18,sex:man}
for k,v in dic.items():
    print(k,v)

enumerate:枚举,对于一个可迭代的(iterable)/可遍历的对象(如列表、字符串),enumerate将其组成一个索引序列,利用它可以同时获得索引和值。

li = [alex,银角,女神,egon,太白]
for i in enumerate(li):
    print(i)
for index,name in enumerate(li,1):
    print(index,name)
for index, name in enumerate(li, 100):  # 起始位置默认是0,可更改
    print(index, name) 

range:指定范围,生成指定数字。

for i in range(1,10):
    print(i)

for i in range(1,10,2):  # 步长
    print(i)

for i in range(10,1,-2): # 反向步长
    print(i)

 

    

  

      

Python基础三

标签:序列   str   函数   取字符串   条件   格式化   jdk   计算   存储   

原文地址:https://www.cnblogs.com/strive-man/p/8337050.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!