python基础流程控制与数据类型

一、流程控制

  1.if判断

  条件判断if...else

  if <条件判断1>:
    <执行1>
  elif:<条件判断2>
    <执行2>
  else:
    <执3>

  2.while循环:重复指令

 while True:  #while循环
     res=input('请输入命令: ')  #让用户输入命令
     if res == '':  #如果用户输入为空,那么重新输入
         continue
     else:    #否则退出
         break

  3.for循环:重复执行一组命令操作。

  语法:for 变量 in 集合

 msg='hello egon 666'      #定义变量
 for i in msg:                  #循环
     print(i,end=" ")        #输出i,并且在结尾不换行    

二、数据类型

1.数字

  数字类型包括:整型和浮点型,复数

  数字特性:

  1)只能存放一个值

  2)一经定义,不可更改

  3)直接访问

2.整型

  整型可以用十进制、二进制、八进制和十六进制表示,如十进制的10、二进制的1010、八进制的12和十六进制的a都表示是整数10

  print(bin(10))     #十进制转换二进制  0b
  print(oct(10))     #十进制转换八进制  0o
  print(hex(10))     #十进制转换十六进制 0x

  整型在python2里是有长度限制的,分为整型和长整型,在python3里没有长度限制,所以数字再长都可以叫做整型,当然可以通过长整型方法将整型编程长整型,长整型的数字最后有一个L标识。

  int()  转化为整型

2.浮点型

  即小数,如1.2,0.3等

  浮点数科学计数法:print(1.3e-3) == 0.0013

三、字符串

  字符串是一个有序的字符的集合,用于存储和表示基本的文件信息

  字符串特性:

    1、只能存放一个值

    2、不可变

    3、按照从左到右的顺序定义字符集和,索引从0开始有序访问

  定义方法:a='qwe'

  1.字符串常用方法

  .strip()   去除字符串左右两边的内容

s1='abc             '
s2='**********abc*******'
print(s1.strip(' '))
print(s2.strip('*'))
输出结果:
abc
abc
  .capitalize()       首字母大写
s1='abcdef'
print(s1.capitalize())
执行结果
Abcdef
  .upper        所有字母大写
s1='abcdef'
print(s1.upper())
输出结果
ABCDEF
  .lower         所以字母小写
s1='ABCdef'
print(s1.lower())
输出结果
abcdef
  .center(30,'#')     宽度为30个字符,S1居中显示,不够30个用#补满
s1='ABCdef'
print(s1.center(30,'#'))
输出结果
############ABCdef############
  .count('n')       统计某个字符出现了几次
s1='aaaABCdaaefaa'
print(s1.count('a'))
输出结果
7
  count('n',x,y) 统计x到y中有几个n
s1='aaaABCdaaefaa'
print(s1.count('a',0,8))
输出结果
4
  .endswith(‘x’)    判断是否以x结尾
s1='aaaABCdaaefaa'
print(s1.endswith('a'))
执行结果
True
  .startswith(‘x’)    判断是否以x开头
s1='aaaABCdaaefaa'
print(s1.startswith('b'))    
执行结果
False                #括号内的b换成a就会是True
  .find()       找出某个字母所在的值
s1='aaaABCdaaefaa'
print(s1.find('C'))
执行结果
5
  .format()      格式化字符串
msg1='Name:{},age:{},sex:{}'
print(msg1)
print(msg1.format('egon',18,'male'))
msg2='Name:{0},age:{1},sex:{0}'
print(msg2.format('aaaaaaaaaaaaaaaaa','bbbbbbbbbbbbbb'))
msg3='Name:{x},age:{y},sex:{z}'
print(msg3.format(y=18,x='egon',z='male'))
输出结果:
Name:{},age:{},sex:{}
Name:egon,age:18,sex:male
Name:aaaaaaaaaaaaaaaaa,age:bbbbbbbbbbbbbb,sex:aaaaaaaaaaaaaaaaa
Name:egon,age:18,sex:male
  .index(‘x’)    查看x在第几位
s1='aaaABCdaaefaa'
print(s1.index('d'))
执行结果
6
  .isdigit()      判断变量是不是数字
s1='aaaABCdaaefaa'
print(s1.isdigit())
执行结果
False            #很显然S1不是数字,如果是数字执行结果会是True
  .replac()       替换字符 
s1='aaaABCdaaefaa'
print(s1.replace('a','G'))
执行结果
GGGABCdGGefGG      #把a替换成G

s1='aaaABCdaaefaa'
print(s1.replace('a','G',2))
执行结果
GGaABCdaaefaa        #第二个数字指定a替换几次
  .split()         分割
msg='/etc/a.txt|365|get'
print(msg.split('|'))
执行结果
['/etc/a.txt', '365', 'get']
  .islower()     判断字符串是否全部小写
s1='aaaABCdaaefaa'
print(s1.islower())
执行结果
False
  .isspace()     判断是否全都是空格
s2='                     '
print(s2.isspace())
执行结果
True
  .istitle()     判断首字母是否大写
s1='aaaABC'
print(s1.istitle())
执行结果
False
  .ljust(10,‘*’)     总共十个字符左对齐不够用*填充
s1='aaaABC'
print(s1.ljust(10,'*'))
执行结果
aaaABC****
  .rjust                              相反,右对齐
  执行结果****aaaABC
原文地址:https://www.cnblogs.com/78pikaqiu/p/6958910.html