整数 布尔值

day03

一丶整型

#二进制转成十进制的方法
       # 128   64     32     16   8   4   2
          1     1       1      1    1    1    1
       例如数字5 : 101
#十进制转成二进制的方法
递归除取余数,从底向上
       #十进制:5
       5%2==1  👆
       2%2==0  👆     >>>>>0101   5的二进制就是:101
       2%2==1 👆
       1%2==0  👆

#python中获得十进制转成二进制占位个数
a=5 # 二进制->101
print(a.bit_length())# 3位

二丶布尔值类型

#bool 布尔值 #True 真 , False 假

####数值类型转换成布尔值类型 bool(数值)
##只有0是False , 非0是True
       print(bool(0)) # False 只有0是False
       print(bool(1)) # True   非0是真
       
####字符串转换成布尔值类型 bool(字符串)
##空的字符串为False ,非空字符串为True
  print(bool(''))  # 空字符串 False
       print(bool("abc")) # 非空字符串 True

####布尔值类型转换成字符串类型 str(布尔值)
print(str(True)) # 转换成字符串 True
  print(type(str(False)))# 查看类型<class 'str'>
       
####布尔类型转换成数值类型 int(布尔值)
print(int(True)) # 转成int 1
print(type(int(False))) #<class 'int'>

三丶字符串

#python中:

字符串是由:单引号 '' , 双引号"", 三引号''''''引起来的内容

#字符串的作用:

存储小量的数据

切片操作

#在计算机中,字符串的下标(索引)从0开始,
#从左向右
   name='Tom'
   print(name[0]) # T
   print(name[1]) # o
   print(name[2]) # m

   #从右到左
   print(name[-1])  # m
   print(name[-2])  # o
   print(name[-3])  # T
   
   
   
# 字符串的切片   目的: 得到想要的字符串数据
# 格式: a[start: end (顾头不顾尾): step(步长,默认为1)]
   a='abcdefg'
   print(name[0:10]) #切片结束位置超出,不报错
   print(name[100]) #索引下标越界 --->控制报错
   print(a[1:4])# bcd     4-1 取3个
# 案例:
s='你好世界'
 #取出: 你世    
print(s[0:4:2])
 #取出: 好界
print(s[1:4:2])
 #取出: 界世
print(s[-1:-3:-1])
       
#起始位置 + 步长
print(a[0:6:2])     #ace        
 *过程: ab  cd ef  --->在区间内,2个分一组,取分组的第一个***

*******切片方向理解*******
#切片方向的错误 案例:
print(a[-1:-15:]) #   默认方向+1 从左到右, 取值方向错误~~~~
print(a[-7:-1:-1]) #   方向 -1 从右到左, 取值方向错误~~~~

 

字符串操作

#1.全部大写
name='test'
print(name.upper())

#2.全部小写
name3='TESTA'
print(name3.lower())

#3.判断以哪个字符开头
print(name.startswith('t'))

#4.判断以哪个字符结尾
print(name.endswith('t'))

#5.count 统计字符串的个数
a='aaabbc'
print(a.count('a'))

#6. 字符串的替换
b='abcaim'
print(b.replace('a','q',1))  # old new count 次数:替换的次数

#7. 去除字符串两端的空格或者空白部分
c=' 123   '
print(c.strip()) # strip()默认去除空格,指定要去除的内容
print(c.rstrip()) # strip()右去除,指定要去除的内容
print(c.lstrip()) # strip()左去除,指定要去除的内容

#8. 分隔
d='a,b,c,d,e,f,'
print(d.split(','))# 默认去除空格, 可以指定要分隔的内容.返回数据是列表形式

#9. format字符串格式化

       # 按照位置顺序填充
       e='a is {} b is {}'
       print(e.format('boy','girl'))

       # 按照索引位置顺序填充
       e='a is {} b is {}'
       print(e.format('boy','girl'))

       #按照指定参数填充
       e='a is {a} b is {b}'
       print(e.format(a='boy',b='girl'))


# 10 判断是不是阿拉伯数字
num='231'
print(num.isdigit())

#11. 判断是不是10进制数字
num2='11'
print(num2.isdecimal())

#12. 判断是不是中文和字母
txt='奥迪ald'
print(txt.isalpha())

#13. 判断是不是字母和数字,中文和阿拉伯数字
txt2='大声dka213'
print(txt2.isalnum())

day14
s='abcdefg'
print(len(s)) #公用的 工厂函数,所有类型都能使用,除了int 和bool类型

四丶for循环

#for循环语法:
#for关键字   i变量 in 关键字   s可迭代对象
   s='abcd'
   for  i  in  s:
     print(i)

#range(start,end,step) --->范围 , 生成一个序列。
#参数含义:
 start:计数的开始位置,默认是从0开始。
     end: 计数的结束位置
     step:每次跳跃的间距,默认为1
 

#pass 占位符 和 ...
在for循环体内什么也不执行


***区别:python2  python3中***
python3: range()返回的是一个可迭代的对象,不是列表类型
   x=range(3)
   print(type(x)) # ----><class 'range'>
print(x)      #---->range(0,3)
   
**标注:Python3中的range和生成器是不一样的.

python2: range()函数返回的是列表。
   x=range(3)
   print(type(x)) # --->[0,1,2] 列表
   

 

 

posted on 2020-01-11 15:10  向往1  阅读(536)  评论(1编辑  收藏  举报

导航

……