1、数字类型 int

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

bit_length()  当前十进制用二进制表示时,最少使用的位数

s = 5
print(s.bit_length())    # 结果为 3 (101)
s = 9
print(s.bit_length())    #结果为 4  (1001)

1.2 二进制与十进制之间相互转换

  pass

2、布尔值 bool

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

真   1   True

假   0   False

str ---->  bool    非空即True  (空格不代表空,空格也是一个字符)

print(bool(''))             # False
print(bool('  '))           # True
print(bool('1@3ert'))       # True

3、字符串 str (*****)

  3.1 字符串的索引与切片

  字符串的切片索引以及常用操作方法 都是形成新的字符串,与原字符串没有关系。

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

a = 'ABCDefgHij'
print(a[0])             # A
print(a[3])             # D
print(a[-3])               # H

 3.2 字符串切片

a = 'ABCDefgHij'
print(a[0:3])
print(a[3:5])
print(a[0:])    # 默认到最后
print(a[:5])      #默认从0开始
print(a[0:-1])    # -1 是列表中最后一个元素的索引,但是要满足顾头不顾腚的原则,所以取不到j元素
print(a[0:6:2])     #加步长
print(a[4:1:-1])     # 反向步长
s = 'ABCDEfghijk'
print(s[:5:-1])            #反向步长,要从末尾开始,到第五个字符结束,输出结果kjihg

3.3 字符串的常用操作方法  (按 ❤ 等级排列)

  (都是形成新的字符串,与原字符串没有关系。)

 

❤  (一星,了解)

1、 center() 将字符串居中可以设置总长度,可以设置填充物 * ,填充物仅支持一个字符

s = 'Echomaster'
s1 = s.center(40, '+')     
print(s1)                   #   +++++++++++++++Echomaster+++++++++++++++

2、swapcase  大小写翻转

s = 'abDRdKu12$%^Nll'
print(s.swapcase())     #  ABdrDkU12$%^nLL

3、 title  非字母隔开的每个单词的首字母大写

s = 'alex echo General'
print(s.title())               #  Alex Echo General

 4、join

 (list(必须全部都是字符串组成的列表) ---> str 只是其中一种用途 )

s = ['echo', 'alex', 'iris']
s1 = ' '.join(s)
print(s1)  #  echo alex iris

 

===========================================================================================

❤❤ (二星,记住)

1、capitalize()   首字母大写

s = 'ECHO ALex\nmen'
print(s.capitalize())    #Echo alex men  仅第一个字母大写,其他全部换成小写,加换行符后的字母不会大写
s = '12echoALex'
print(s.capitalize())     #  12echoalex   如果是数字开头,没什么变化
s = '$efAL'
print(s.capitalize())      # $efal   特殊字符开头也没有变化
s = 'echo alex age17'
print(s.capitalize())       #  不支持切片

2、find    index

   find : 通过元素找索引,找到第一个就返回(可切片),找不到返回-1

   index 通过元素找索引,找到第一个就返回(可切片),找不到报错

s = 'echo is a great man'
print(s.find('a', 9))   # 支持切片,9代表索引[9] 开始找
print(s.index('x')) # 找不到则报错

3、is系列

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

 

============================================================================================ 

❤❤❤  (即使忘记银行卡密码,也要记住这些)

1、 upper()    lower ()    全部大写,全部小写,一般用在验证码

s = 'echo IS a GOod Men'
print(s.upper())                    # ECHO IS A GOOD MEN
print(s.lower().capitalize())       # Echo is a good men

upper() / lower()  用在验证码的例子

username = input('请输入用户名:  ').strip()       #  strip 消除用户误操作输入的空格
password = input('请输入密码: ').strip()         #  strip 消除用户误操作输入的空格
if username == 'echo' and password == '123':
    code = input('请输入验证码: ').lower()       # lower()/upper()   验证码不区分大小写
    if code == 'AsDfg'.lower():                   # lower()/upper()   验证码不区分大小写
        print('登录成功')
    else:
        print('验证码错误')
else:
    print('账号或密码错误')

2、startswith  endswith   看出字符串是否已 XX开头 或结尾

s = 'echo is a good men'
print(s.startswith('is'))      #  False
print(s.endswith('en'))         # True
print(s.startswith('is', 5, 7))   #支持切片   True
print(s.endswith('e', -3, -1))      #   True

 3、strip默认清楚字符串前后两端的空格,换行符,制表符 (‘  ’,‘ \n ’, ' \t ')

s = '  \n \t echo \t \t \n  *   \n '
print(s.strip())              #  只能删除前后空格,换行,制表符

s = '  \n \t echo \t \t \n  *   \n '
print(s.strip('*'))         #   如果自定义,则只能删除自定义的字符,不能删除空格,换行,制表符

 lstrip   rstrip 

s = '**echo****'
print(s.lstrip('*'))    # echo**** 
print(s.rstrip('*'))    # **echo

应用举例:在输入账号密码界面,去除用户误操作输入的空格

while 1:
    username = input('请输入姓名: ').strip()     #  strip  去除空格,制表符 ,换行符
    password = input('请输入密码: ').strip()      #  strip  去除空格,制表符 ,换行符
    if username == 'echo' and password == '123':
        print('登录成功')
        break
    else:
        print('输入账号错误,请重新输入!')

特殊用法:

ss = 'qrechoqwrendqqwewwr'
s8 = ss.strip('qwre')    #去除字符串两边所有的qwre     结果 :choqwrend
print(s8)

4、split 用法

   默认以空格分割字符串,可以自定义, 分割必成列表

   分割出的元素要比分隔符数+1

s = 'wus ir alex taibai'
print(s.split())            # ['wus', 'ir', 'alex', 'taibai']
print(s.split(' ', 2))      # 以空格为分割,2表示最大分割两次  ['wus', 'ir', 'alex taibai']
s = '#wus#ir#alex#taibai#'
print(s.split('#'))            # 自定义分隔符 ['', 'wus', 'ir', 'alex', 'taibai', '']

5、replace 用法:  

  用新字符串替换原字符串,,   

replace('old', 'new', count)  count代表 从左往右要替换掉的个数
s = 'Alex是老男孩的创始人之一,Alex也是一个Alex'
s1 = s.replace('Alex', 'echo', 2)        # echo是老男孩的创始人之一,echo也是一个Alex  
print(s1)

6、格式化输出: format

format 格式化输出  
第一种方式:
s = '我叫{}, 今年{}, 性别{}'.format('小虎', 25, '女')
print(s)
第二种方式
s = '我叫{0}, 今年{1}, 性别{2},我依然叫{0}'.format('小虎', 25, '女')
print(s)
第三种方式
s = '我叫{name}, 今年{age}, 性别{sex},我依然叫{name}'.format(age=25, sex='女',name='小虎',)
print(s)

 格式化输出个人名片:

name = input('请输入姓名: ')
age = input('请输入年龄: ')
sex = input('请输入性别: ')
address = input('请输入家庭住址: ')
msg = '''
-------------info for {name}---------
name: {name}
age : {age}
sex : {sex}
address: {address}
----------------end------------------
'''.format(sex=sex, name=name, age=age, address=address)
print(msg)

另一种方法,   (fomart括号里面,可以直接引用input输入的变量)

name = input('请输入姓名: ')
age = input('请输入年龄: ')
sex = input('请输入性别: ')
address = input('请输入家庭住址: ')
msg = '''
-------------info for {}---------
name: {}
age : {}
sex : {}
address: {}
----------------end------------------
'''.format(name, name, age, sex, address)
print(msg)

7、count    计算字符串中某个字符出现的次数  

s = 'asefdasefdsaefea4grehg4r'
print(s.count('a'))        
print(s.count('a', 1,6))   #   支持切片

8、len() 公共方法(内置函数)

s = 'asefdsaefeae'
print(len(s))       #12

9、

for 循环:

结构:
for 变量 in iterable:
s = '深圳骑士'
for i in s:
    print(i)

 

 






posted on 2018-12-21 17:40  拾玥大熊  阅读(135)  评论(0编辑  收藏  举报