python Day-3

1.数据类型

数字 int 主要是用于计算用的,使用方法并不是很多。如 1 100 1000

布尔值 bool 就两种,True,False。用以反应条件的正确与否。如 True False

字符串 str 用以存储少量数据,进行操作。如 ‘I am a boy’ ‘大量子’

列表 list 储存大量的数据。如 [1,2,3,'泰哥','12353234',[1,2,3]]

元祖 tuple 只读的列表。如 (1,2,3,'第三方',)

字典 dict:用以储存信息的键值对(关系型数据)  字典{'云姐':[],'二哥':[200,200,200,。。。。。。]}

集合(很少用到):{1,2,34,'asdf'}

 

2.各数据类型的常用功能

1 int i

求位的长度 i.bit_length() 用二进制表示的最小位数

1                 bit_length
2 1     0000 0001      1
3 2     0000 0010      2
4 3     0000 0011      2

int 和str的相互转化

1 int ----> str
2 i = 1
3 s = str(i)

str和int的相互转化

1 str ---> int
2 s = '123'
3 i = int(s)

 

2 bool

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

bool(6)---- True

bool(0)----False

bool----> int  True----1  False----0

intTrue)---- 1

intFalse)---- 0

 

str和bool的转化:

空字符串都是False,非空字符串都是True。

 

1 isdigit()判断是不是数字 返回布尔值
2 isalpha()判断是不是字母 返回布尔值
3 isalnum()判断是不是字母或数字 返回布尔值

 

高端条件写法(转化效率高):

1 while True:
2     pass
3 while 1: 效率高
4     pass

判断用户是否输入:

1  s = input(‘xxx’)
2  if s:
3      print('你输入的为空,请重新输入')
4  else:
5      pass

 

3 str

s = 'ABCDLSESRF'
索引

字符串的第一个字符的位置是 0!!!

1 s1 = s[0]  拿第0个字符
2 s2 = s[2]  拿第2个字符
3 s3 = s[-1]  拿倒数第一个字符
4 s4 = s[-2]  拿倒数第二个字符

 切片 :顾头不顾尾

1 s5 = s[0:4]  取前4位字符
2 s6 = s[0:-1]  取从头到尾不包含最后一位的字符
3 s7 = s[:]  取全部内容
4 s8 = s[0:] 取全部内容
5 s9 = s[0:0] 空字符串 啥也没取

s = 'ABCDLSESRF' # s[首:尾:步长]

1 s10 = s[0:5:2] 取前5个 步长为2
2 s11 = s[4:0:-1] 从第4位取到第1位 不包含第1位
3 s12 = s[3::-1] 从第3位取到头 
4 s13 = s[3::-2] 从第3为以步长为2的取到头

s = 'ABCDLSESRF'

1 s14 = s[-1::-1] 从最后一位取到头 
2 s15 = s[::-1] 从最后一位取到头

s = 'alexWUsir'

首字母大写 s1 = s.capitalize()

全大写,全小写(可以用在用户输入处理和数据库数据比对)(对数字没有影响)

1 s2 = s.upper() 
2 s21 = s.lower()

大小写翻转

1 s3 = s.swapcase()

每个隔开(特殊字符或者数字)的单词首字母大写

1 s = 'alex*egon-wusir'
2 s4 = s.title()(a e w 字母大写了)
1 s = 'fade,crazy*w4rri0r_songsong node_3'
2 s4 = s.title()(f c w r r s n 字母大写了)

居中,空白填充

1 s5 = s.center(20,'~')(填充长度 填充内容)

用8位一组的空格,填充\t之前的内容 超过8位的按照16位 24位计算(不是很常用)

1 s6 = s.expandtabs()

求长度 len(s) (基本字符 能看到的长度)

1 s7 = len(s)(所占字符)

以什么开头结尾 

1 s8 =s.startswith('alex') 
2 s81 = s.startswith('e',2,5)
3 s9 =s.endswith('alex') 
4 s91 = s.endswith('e',2,5)

find 通过元素找索引,找不到返回-1
index通过元素找索引,找不到报错

1 s8 = s.find('A')
2 s81 = s.index('A')

strip 默认删除前后空格lstrip(左删除) rstrip(右删除)

在lstrip()中可以添加要删除的内容(只针对前后内容 不针对中间内容)(可以用在用户输入处理和数据库数据比对)

其工作原理是清理strip()中的内容 碰到不一样的停止清理

1 username = input('请输入名字:').strip()
2 if username =='春哥':
3     print('恭喜春哥发财')
4 
5 s = 'alexWUsir%'
6 s9 = s.strip('%')(去除%7 s = ' *a%lexWUsi* r%'
8 s91 = s.strip(' %*')(去除 %*)

计算出现的次数s.count('内容')

1 s = 'alexaa wusirl'
2 s10 = s.count('al')
3 print(s10)

split分割,可以将字符串转化为列表。

1 s = ';alex;wusir;taibai'
2 l = s.split('a')(输入要分割的内容)
3 print(l)

format的三种方法 格式化输出

1 s = '我叫{},今年{},爱好{},再说一下我叫{}'.format('太白',36,'girl','太白')(一一对应)
2 name = input('请输入名字:')
3 s = '我叫{0},今年{1},爱好{2},再说一下我叫{0}'.format(name,36,'girl')(按照位置对应)
4 name = input('请输入名字:')
5 s = '我叫{name},今年{age},爱好{hobby},再说一下我叫{name}'.format(age=18,name=name,hobby='girl')(名字对应)

替换s.replace(‘’,‘’,) (原先内容,替换内容,替换次数)

1 s = '隔壁老王来街坊探亲,探亲用了2天'
2 s11 = s.replace('街坊','老王',1) 
3 print(s11)

for循环(遍历)

1 s = 'fhdsklfds'
2 for i in s:
3 print(i)

in 在...中(in的条件只能放一个)

s = 'fdsa苍井空fdsalk'
if '苍井空' in s:
    print('您的评论有敏感词...')

 

整理:

 

 

 

 

 

posted @ 2017-12-18 17:18  大量子  阅读(140)  评论(0编辑  收藏  举报