python基础数据类型

基础数据类型

数字

字符串

列表

元祖

字典

集合


数字类型 - int 

  数字类型是用于计算的

v = 10
data = v.bit_length()

print(data)
$4

 

布尔类型 - bool

  布尔类型只有两个值True,False

  一般情况下0 - False

          1 - True


 

字符串类型 - str

  字符串有索引,可切片

s = 'abC kLsei jl kJs Dflj'
s1 = s[0]    #索引,索引从0开始
s2 = s[-2]   #倒数第二位
s3 = s[-1]   #最后一位为-1
print(s1,s2,s3)

$a,l,j

s3 = s[0:5] #切片,取原则是顾头不顾尾
print(s3)

$abC k

#取出全部字符串
s5 = s[0:]
s5 = s[:]
print(s5)

$abC kLsei jl kJs Dflj

s6 = s[1:8:2] #跳取
print(s6)

$b Le

#全部取反
s7 = s[-1::-1]    
s8 = s[::-1]
print(s7)
print(s8)

$jlfD sJk lj iesLk Cba

s9 =s.capitalize()  #首字母大写
s10 = s.upper() #全部字母大写
s11 = s.lower() #全部字母小写
s12 = s.swapcase()  #大小写字母翻转

print(s9)
print(s10)
print(s11)
print(s12)

$Abc klsei jl kjs dflj
$ABC KLSEI JL KJS DFLJ
$abc klsei jl kjs dflj
$ABc KlSEI JL KjS dFLJ

s = 'abC kLsei4jl-kJs=dflj_ame'
#单词首字母大写,以空格,数字,特殊字母隔开
s13 = s.title()
print(s13)

$Abc Klsei4Jl-Kjs=Dflj_Ame

s = 'center'
s14 = s.center(20,'-') #以限定宽度居中,两边用符号补充
print(s14)

$-------center-------

s='123456781111111\tsisi'
s1='a\tsisi'
# 默认将一个tab键变成8个空格,如果tab前面的字符长度不足8个,则补全8个,如果tab键前面的字符长度超过8个不足16个则补全16个,以此类推每次补全8个。
s15 = s.expandtabs()
s16 = s1.expandtabs()
print(s15)
print(s16)

$123456781111111 sisi
$a       sisi

s = 'abC kLsei jl kJs Dflj'
print(len(s))    #公共方法适用于字符串,列表,元祖,字典,集合

$21

s = 'asebC kLse jsel kJse seDflj'
s17 = s.startswith('se',1)  #反回是否以规定前缀返回,可切片
print(s17)

$True

s = 'asebC kLse jsel kJse seDflj'
print(s.find('sea'))   #返回bool,存在1,不存在返回-1,不报错
print(s.index('sea'))  #存在1,不存在报错

$-1
$Traceback (most recent call last):
  File "F:/PythonLaoNanHai/PythonBegin/20171218/p1.py", line 63, in <module>
    print(s.index('sea'))
ValueError: substring not found

s = '  sdflkbi sdf  uu '
print(s.strip())    #默认去除前后空格
print(s.rstrip())   #删除右空格
print(s.lstrip())   #删除左空格
s = '%@sdflkbi sdf  uu%&'
print(s.strip('%&'))    #指定需要删除符号

$sdflkbi sdf  uu
$@sdflkbi sdf  uu

s = '  sdflkbi sdf  uu '
print(s.split())    #默认以空格分割
s = '  sdflkbi sdf  uu  '
print(s.split())    #自动去除前后空格
s = ' :al:wi:ok:fg:dfgf:dfgdf:ee'
print(s.split(':' ,5))  #以:分割,指定数字为前几组分割,超过不报错

$['sdflkbi', 'sdf', 'uu']
$['sdflkbi', 'sdf', 'uu']
$[' ', 'al', 'wi', 'ok', 'fg', 'dfgf:dfgdf:ee']

 

split方法是一种字符串转换为列表的方式


格式化输出

1. % 格式化输出 %s ,%d

2.format格式化输出

#format有三种方式
s1 = '我叫{},年龄{},爱好{},再说一遍我还是{}'.format('wen',18,'gril','wen')
s2 = '我叫{0},年龄{1},爱好{2},再说一遍我还是{0}'.format('wen',18,'gril')
s3 = '我叫{name},年龄{age},爱好{hobby},再说一遍我还是{name}'.format(name = 'wen',age = 18,hobby = 'gril')

print(s1)
print(s2)
print(s3)
#格式化值可使用变量代替
name = 'liu'
s4 = '我叫{},年龄{},爱好{},再说一遍我还是{}'.format(name,18,'gril',name)
s5 = '我叫{0},年龄{1},爱好{2},再说一遍我还是{0}'.format(name,18,'gril')
s6 = '我叫{name},年龄{age},爱好{hobby},再说一遍我还是{name}'.format(name = name,age = 18,hobby = 'gril')
print(s4)
print(s5)
print(s6)

$我叫wen,年龄18,爱好gril,再说一遍我还是wen
$我叫wen,年龄18,爱好gril,再说一遍我还是wen
$我叫wen,年龄18,爱好gril,再说一遍我还是wen
$我叫liu,年龄18,爱好gril,再说一遍我还是liu
$我叫liu,年龄18,爱好gril,再说一遍我还是liu
$我叫liu,年龄18,爱好gril,再说一遍我还是liu

s = 'abc abd ddd'
print(s.replace('d','#')) #把 string 中的 str1 替换成 str2,如果 num 指定,则替换不超过 num 次.

$abc ab# ###

#返回 str 在 string 里面出现的次数,如果 beg 或者 end 指定则返回指定范围内 str 出现的次数

s = 'abc abd ddd'
print(s.count('d'))

$4


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

 

for循环  

  格式: for i in   s  :

        输出

 

posted @ 2017-12-18 17:14  wsg-python  阅读(192)  评论(0编辑  收藏  举报