python基础之流程控制、数字和字符串处理

流程控制

条件判断

if单分支:当一个“条件”成立时执行相应的操作。

语法结构:

if 条件:
    command

流程图:

示例:如果3大于2,那么输出字符串"very good"

#!/usr/bin/env python
# -*- coding: utf-8 -*-
if 3 > 2:
    print("very good")

if双分支:当“条件成立”时候执行一个操作,或者“条件不成立”执行另外一个操作操作。

语法结构:

if 条件:
    command1
else:
    command2

流程图:

示例:输入一个数,如果输入的是5,那么输出you are right,输入其他数,输出you are wrong

#!/usr/bin/env python
# -*- coding: utf-8 -*-
num=input(‘please input a number:‘)
if num == 5:
    print(‘you are right‘)
else:
    print(‘you are wrong‘)

if多分支:相当于if语句嵌套,针对多个条件执行不同操作。

语法结构:

if 条件:
    command1
elif 条件:
    command2
...         #可存在多个elif判断
    command...
else:
    commandn

流程图:

示例:输入一个数字,如果在0-9范围内,将该数字转成二进制输出,如果在10到19范围内,将该数字转成8进制输出,在20或者更大,那么转换成16进制输出

#!/usr/bin/env python
# -*- coding: utf-8 -*-
num=int(input(‘please input a number:‘))  #input输入为str字符串格式用int转化成整数
if num in range(10):        #range()方法是一个范围,for循环详细说明
    print(bin(num))        #bin()方法,转化为二进制
elif num in range(10,20):
    print(oct(num))        #oct()方法,转化为八进制
else:
    print(hex(num))        #hex()方法,转化为十六进制

循环

for循环:根据标量的不同取值,重复执行一组命令操作。

语法结构:

for 变量 in 集合:
    command

流程图:

示例1:依次输出数字0到10

for i in range(11):
    print(i)

range(11)表示一个范围,从头到尾依次是0,1,2,3,4,5,6,7,8,9,10,共十一个数字,这个范围顾头不顾尾,即不包括最大的那个数

示例2:依次输出数字5到10

for i in range(5,11):
    print(i)

range(5,11),表示开头为5,结束为11的一个范围,包括5但不包括11

示例3:0到10数字范围,每隔一个数输出一个数

for i in range(0,11,2):
    print(i)

输出结果为:0,2,4,6,8,10,range()方法的第三个数表示步数,也就是间隔的值

补充:for+else

else内的指令只在for循环结束后执行,并且该循环没有被break或continue打断

for i in range(0,11,2):
    print(i)
else:
    print(‘ok‘)

输出结果:
0
2
4
6
8
10
ok

条件循环

while条件循环:重复测试指令的条件,只要条件为真则反复执行对应的命令操作,直到条件为假。如果使用true作为循环条件能够产生无限循环。

语法结构:

while 条件 :
    command

流程图:

示例:打印0到100的所有的奇数

i=1
while i <=100 :
    print(i)
    i = i + 2

补充:while+else

表示while在正常循环结束后才能执行else,即循环过程中没有被break和continue打断,完全循环后才能执行else的指令

示例:

i=1
while i <=5 :
    print(i)
    i = i + 2
else:
    print(‘ok‘)

输出结果:
1
3
5
ok

数字

数字类型包括:整型和浮点型(即整数和小数),布尔值,复数

数字特性:

  1、只能存放一个值,不论这个数字有多长

  2、一经定义,不可更改,因为数字是不可变的(如果不理解,看过后边的数组tuple后就理解了)

  3、通过变量直接访问

整型

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

print(10)
print(bin(10))   #10的十进制转换二进制
print(oct(10))   #10的十进制转换八进制
print(hex(10))   #10的十进制转换十六进制,0-9和abcdef

输出为:
10
0b1010    #0b表示二进制
0o12      #0o表示八进制
0xa      #0x表示16进制

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

其他常用方法(简略):

int()  转化为整型

abs()  求绝对值

float()  转换层浮点型

浮点型

即小数,如1.2,0.3等

浮点数科学计数法:

print(1.3e-3)   #1.3的10的-3次方、e3表示10的3次方

布尔值

True用1表示

False用0表示

字符串

字符串

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

字符串特性:

  1、只能存放一个值

  2、不可变

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

定义方法:字符串定义,四种引号都是定义字符串

a=‘xyz‘
b="xyz"
c=‘‘‘xyz‘‘‘
d="""xyz"""

字符串处理

移除空白:把字符串的前后指定的字符位置移除,中间的无法移除

s1=‘abc             ‘
s2=‘**********abc*******‘
s3=‘**********a**bc*******‘
print(s1.strip(‘ ‘))
print(s2.strip(‘*‘))
print(s3.strip(‘*‘))
输出结果:
abc
abc
a**bc

分割:指定字符为分隔符,将字符串转换成list

s1=‘abc|def|ghi‘
print(s1.split(‘|‘))
输出结果:
[‘abc‘, ‘def‘, ‘ghi‘]

长度:统计字符串长度,包括空格和符号

s1=‘abc             ‘
s2=‘**********abc*******‘
s3=‘**********a**bc*******‘
print(len(s1))
print(len(s2))
print(len(s3))
输出结果:
16
20
22

索引:表示字符的位置,从0开始计数

s1=‘abc             ‘
s2=‘**********abc*******‘
s3=‘**********a**bc*******‘
print(s1[2])  #0位置为a,1位置为b,2位置为cprint(s2[11])
print(s3[-8])  #-8位置为从后开始数第8个字符,从后计数的第一个字符位置为-1位置
输出结果:
c
b
c

切片:根据索引位置匹配需要的字符串片段

s1=‘abcdefghi‘
print(s1[2:5])  #2,3,4位置
print(s1[2:8:2])  #匹配2,4,6位置,第二个2表示步数,每隔一个匹配一个
print(s1[-5:-3])  #倒序-5,-4位置
输出结果:
cde
ceg
ef

其他常用方法:

首字母大写

s1=‘abc def abc‘
print(s1.capitalize())输出结果:Abc def abc

统计某个字符的数量,空格也算字符

s1=‘abc def abc‘
print(s1.count(‘a‘))
print(s1.count(‘a‘,0,4))     #表示0-4位置,不包括4位置
输出结果:
2  #整个字符串有两个a
1  #0,1,2,3位置有一个a

检验开头和结尾字符串

s1=‘abc def abc‘
print(s1.endswith(‘c‘))
print(s1.startswith(‘a‘))
输出结果:
True
True

查找字符串内是否包含该字符

s1=‘abc def abc‘
print(s1.find(‘b‘))
print(s1.find(‘d‘))
输出结果:
1    #输出的是匹配的第一个字符的索引位置
4

格式化字符串

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

索引(查看索引位置)

s1=‘abc def abc‘
print(s1.index(‘a‘))  #匹配第一个a的索引位置
print(s1[s1.index(‘e‘)])  #调用用索引位置

校验字符串是否为纯数字

s1=‘123‘
print(s1.isdigit())
输出结果:
True

替换

msg=‘hello alex‘  #赋值时候实际上是msg=str(‘hello alex‘),replace()方法是str所赋予的,即str.replace()
print(msg.replace(‘x‘,‘X‘))
print(msg.replace(‘alex‘,‘bob‘))
print(msg.replace(‘l‘,‘A‘))
print(msg.replace(‘l‘,‘A‘,1))
print(msg.replace(‘l‘,‘A‘,2))    #第二个数字为替换的次数
输出结果:
hello aleX
hello bob
heAAo aAex
heAlo alex
heAAo alex

大写转换

x=‘hello‘
print(x.upper())
输出结果:
HELLO

检验是否是全大写

x=‘HELLO‘
print(x.isupper())
输出结果:
True

小写转换和检验

x=‘HELLO‘
print(x.lower())
print(x.islower())
输出结果:
hello
False

校验是不是空格

x=‘     ‘        #空格不等于空
print(x.isspace())
输出结果:
True 

开头大写

x=‘hello‘
print(x.title())
输出结果:
Hello

校验开头是否为大写

msg=‘Hello‘
print(msg.istitle())
输出结果:
True

左对齐和右对齐:数字表示对齐后的长度,后边的星号为长度不够用星号补齐

x=‘abc‘
print(x.ljust(10,‘*‘))
print(x.rjust(10,‘*‘))
输出结果:
abc*******
*******abc

大小写交换

x=‘Ab‘
print(x.swapcase())
输出结果:
aB
时间: 2024-10-11 19:07:54

python基础之流程控制、数字和字符串处理的相关文章

python基础之流程控制

python流程控制 python的流程控制跟大多数的语言一样,包括if条件语句.for循环语句.while循环语句:跳出循环continue,break等 写在前面 python中的运算 1)算数运算 以下假设变量:a=10,b=20: 2)比较运算 3)赋值运算 4)位运算 以下假设变量:a=60,b=13,对应二进制为a=0011 1100:b=0000 1101: 5)逻辑运算 Python语言支持逻辑运算符,以下假设变量 a 为 10, b为 20: 6)成员运算,身份运算 除了以上的

Python基础--if流程控制与循环

流程控制之if...else 既然我们编程的目的是为了控制计算机能够像人脑一样工作,那么人脑能做什么,就需要程序中有相应的机制去模拟.人脑无非是数学运算和逻辑运算,对于数学运算在上一节我们已经说过了.对于逻辑运算,即人根据外部条件的变化而做出不同的反映. ###Python定义了缩进的机制.使用流程控制或循环时需要在执行语句前面缩进4个空格. if...else格式: if 条件: 执行语句 else: 执行语句 例如:判断日期,如果是周日则打游戏,不是周日则上班睡觉. date='Monday

Python基础-基本数据类型之数字、字符串

基本数据类型 1.数字 int python 2 int 有范围,超过该范围则为long 类型32位系统上,取值范围为-2^31-2^31-1 ,即-2147483648-214748364764位系统上,取值访问为-2^63~2^63-1,即-9223372036854775808-9223372036854775807python 3 所有整型都是int 类型,没有long类型 eg: #数字 input_num= input("请输入数字:") #获取从键盘输入的数字 print

【Python基础】流程控制-while循环

#while循环 ''' while 条件判断: 满足条件执行的代码 ... 条件判断的根本是True和False的判断 True才会执行 False不会执行 通过一下方法来打印条件是True或者False a = 10 b = 20 print(a > b) print(b > a) ''' # 值条件判断: # a = 3 # b = 5 # 正常条件判断 # while a > b: # print("啦啦啦") # 死循环 # while True: # pr

【Python基础】流程控制-break及continue使用及while..else的使用

''' break 用于结束一个完整的循环,跳出循环体执行循环后面的语句 continue 用于跳出本次循环,但继续下一个循环 ''' ''' continue的用法 打印1-10的数字,3除外 ''' # count = 1 # while count <= 10: # if count == 3: # count+=1 ##如果不添加count+=1当打印到3,直接跳出本次循环这个时候count还是3,就无法进行下次循环 # continue # print(count) # count+=

【Python基础】流程控制-if..else

''' 基本的使用 if 条件: 满足条件执行的代码 else: 不满足条件执行的代码 ''' # age = input("Please input Age: ") # age = int(age) # ''' # 从input得出的结果默认是str,str格式不能被<进行运算 # 所以必须进行转换类型 # ''' # if age < 30: # print("还能折腾几年") # else: # print("老了老了") ''

python语法之流程控制(if while for)

一.python语法之流程控制 1.1什么是流程控制? 流程控制即控制流程,具体指控制程序的执行流程,而程序的执行流程分为三种结构:顺序结构(之前我们写的代码都是顺序结构).分支结构(判断).循环结构(while for) 二.分支结构 2.1 什么是分支结构? 分支结构就是根据条件判断的真假去执行不同分支对应的子代码 2.2 为什么要用分支结构? 为了让计算机可以有像人一样的逻辑判断能力去做事 2.3 怎么使用分支结构? 引入if语句 定义:主要是用于判断事物的对错 真假 是否可行 语法结构

Python运算符与流程控制 #学习猿地

本章节主要说明Python的运算符.举个简单的例子 **4 + 5 = 9** . 例子中,**4** 和 **5** 被称为**操作数**,"**+**" 称为运算符. Python语言支持以下类型的运算符: - 算术运算符 - 比较(关系)运算符 - 赋值运算符 - 逻辑运算符 - 位运算符 - 成员运算符 - 身份运算符 - 运算符优先级 接下来让我们一个个来学习Python的运算符. ------ ## Python算术运算符 | 运算符 | 描述               

python入门之流程控制

python入门之流程控制 一.什么叫流程控制 所谓流程控制就是控制流程,具体指控制程序的执行流程,而执行流程分为三种结构:顺序结构(之前写的代码都是顺序结构),分支结构(用到if判断).循环结构(用where与for) 二.分支结构 2.1什么是分支结构 分支结构就是根据条件判断的真假去执行不同分支对应的子代码 2.2为什么要使用分支结构 程序中需要有相应的机制用来控制计算机具备人的判断能力 2.3如何使用分支结构 if 主要用来判断事物的对错,真假是否可行 如: 1.前面有一个小姐姐年龄在2