python 学习2

思维导图

这里写图片描述
这里写图片描述

python的循环结构

顺序结构

分支结构

  • if:
if 表达式:
    语句
  • if…else…
if 表达式:
    语句
else:
    语句
  • if…elif…else…
if 表达式:
    语句
elif 表达式:
    语句
else:
     语句

注意:在python里面不支持switch语句,如果想实现switch的效果,第一种方法就是使用if...elif...elif...else...;

python中实现三目运算符:

C: maxNum = a>b? a:b
Python: maxNum= a if a>b else b

循环结构

for, while, do…while…

for循环

  • range(m,n,x):从m起始到n-1结束(不包含n),x代表步长;
for item in range(m.n,x):
    循环的语句

for item in 可迭代的类型(eg:字符串.....):
    循环的语句
  • 两个关键字:
    • break:跳出循环,不再执行循环;
    • continue:跳出本次循环,继续执行下一个循环;

while循环

while

while 表达式(或者TrueFalse):
    循环的语句

while … else …..

while 表达式:
    循环语句



In [5]: while trycount<3:
   ...:     print "login"
   ...:     trycount+=1
   ...: else:    
   ...:     print "bigger than 3"
   ...:     

pass

只是占一个语句的位置,并无任何操作;

程序 = 算法 + 数据结构

C:数组,结构体,………..
Python: str,list,tuple,set,dict……..

字符串

字符串的定义

  • ” “
  • ’ ‘
  • “”” “”“

转义字符:\n \r \t \’ \”

字符串的特性

  • 索引:检索引用,通过字符串的下标,拿出字符串的某个字符;(注意:下标从0开始)
    a[0] ## 拿出字符串第一个字符
    a[-1] ##拿出字符串最后一个字符

  • 拼接:+

"hello" + "world"
a[0]+a[1]
  • 切片:切出字符串指定的部分

a[m:n:x] #从m索引开始切,到n-1结束,间隔为x

a[:n] #从开头切到n-1

a[m:] #从m切到字符串结束

a[::] # 切出与a相同的字符串

a[::-1] # 倒序输出字符串a

字符串的方法

字符串填充

//输出字符串宽度为width,S显示在中间,其他部分由fillchar填充
- S.center(width[, fillchar]) -> string

//S显示在left(左边)
- S.ljust(width[, fillchar])

//S显示在right(右边)
- S.rjust(width[, fillchar])

删除前后空格

//删除S中首位指定的chars,没有参数时,默认为空格;
- S.strip([chars]) -> string

  • S.lstrip([chars])
  • S.rstrip([chars])

字符串变形计

//大小写互换
- s.swapcase
- s.title
- s.upper
- s.lower
- s.format

字符串分割

s.split() //默认情况下以空格为分隔符

字符串判定(是否小写/大写/数字…..)

  • str.isalnum() //判断是否都是字母或数字
  • str.isalpha() //判断是否都是字母
  • str.isdigit() //判断是否都是数字
  • str.islower() //判断是否都是小写
  • str.isspace() //判断是否都是英文空格
  • str.istitle() //判断是不是都是标题(有大小写)
  • str.isupper() //判断是不是都为大写字母

字符串的查找

s.count
s.find
s.index
s.rindex
s.rfind

替换

s.replace()
str.join(seq)
- 以str作为分隔符,将序列seq中的所有元素合并为
一个新的字符串。

例1

句子反转

#!/usr/bin/env python

inputstr=raw_input()
inputstr=inputstr.split(" ")
a=inputstr[::-1]
print " ".join(a)

运行结果:
这里写图片描述

例2

处理字符串,最终分别打印数字,大写字母和小写字母;

#!/usr/bin/env python
#coding:utf-8

str = "helo12XyS6E12zF"
num=""
daxie=""
xiaoxie=""
for i in str:
    if i.isdigit():
        num=num+i
    elif i.isupper():
        daxie+=i
    elif i.islower():
        xiaoxie+=i
print "数字为:", num
print "大写字母为:", daxie
print "小写字母为:", xiaoxie

运行结果:
这里写图片描述

例3

用户输入一个数字,判断是否为质数

#!/usr/bin/env python
#coding:utf-8

from math import sqrt
def is_prime(n):
    if n == 1:
        return False
    for i in range(2, int(sqrt(n))+1):
        if n % i == 0:
            print '数字 {} 不是质数!'.format(n)
            return False
    print '数字 {} 是质数!'.format(n)
    return True
is_prime(input('输入要查看的数:'))

程序运行结果:

这里写图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值