1、计算 1 - 2 + 3 ... + 99 中除了88以外的数之和
i = 1
sum = 0
while i < 100 :
if i == 88 :
i = i + 1
continue
if i % 2 == 1 :
sum = sum + i
else :
sum = sum - i
i = i + 1
print(sum)

ps : continue前要加上i = i + 1,不然把 i = i + 1 放在第一个if前

2、计算 1 - 2 + 3 ... - 99 中除了88以外的数之和

i = 0
j = -1
sum = 0
while i < 99 :
i = i + 1
if i == 88 :
continue
else :
j = -j
sum = sum + i * j
print(sum)

ps : 注意 j = - j 放在else之后,不然会出问题

3、用户登录(三次机会)且每次错误时显示剩余错误次数

username = "pzw"
password = ""
i = 3
while i > 0:
yhm = input("请输入你的账号:")
i -= 1
if yhm == username:
mm = input("请输入你的密码:")
if mm == password:
print("验证成功.正在登陆......")
print('''恭喜你登陆成功!
欢迎用户进入
用户名 :%s
密码 :%s
'''%(username,password))
break
else:
if i == 0:
print("你的机会已经没了!game over 下次见!")
answer = input('再试试?Y or N')
if answer == 'Y':
i = 3
print("密码错误,请重新输入")
print("你还有"+str(i)+"次机会")
else:
print("请输入正确的用户名!")
if i == 0:
print("你的机会已经没了!")
answer = input('再试试?Y or N')
if answer == 'Y':
i = 3
print("你还有" + str(i) + "次机会")
else:
print('等等再想想吧!')

4、i.bit_length() 输出二级制位数

i = 100
print(i.bit_length())
#输出7
'''
          bit_length
1  0000  0001   1
2  0000  0010   2
3  0000  0011   2
'''

5、int、bool、str 转换

#int ----> str
i = 1
s = str(i)
print(s)
#输出1
#str ---> int
s = ''
i = int(s)
print(i)
#输出123
#int ----->bool 只要是0就是False 非0就是True
i = 3
b = bool(i)
print(b)
#输出True
#str --->bool
#s = "" -----> False
#非空字符串都是True
#s = "0" -----> True

6、切片

s = 'ABCDEFGHIJKLMN'
s1 = s[0]
print(s1)
#输出为A
s = 'ABCDEFGHIJKLMN'
s3 = s[-1]
print(s3)
#输出为N
s = 'ABCDEFGHIJKLMN'
s4 = s[-2]
print(s4)
#输出为M
#切片顾头不顾尾
s = 'ABCDEFGHIJKLMN'
s5 = s[0:4]
print(s5)
#输出ABCD
s = 'ABCDEFGHIJKLMN'
s6 = s[0:-1]
print(s6)
#输出ABCDEFGHIJKLM
s = 'ABCDEFGHIJKLMN'
s7 = s[:]
s8 = s[0:]
print(s7,s8)
#输出ABCDEFGHIJKLMN
#s[首:尾:步长]
s = 'ABCDEFGHIJKLMN'
s10 = s[0:5:2]
print(s10)
#输出ACE
s = 'ABCDEFGHIJKLMN'
s11 = s[4:0:-1]
print(s11)
#输出EDCB
s = 'ABCDEFGHIJKLMN'
s12 = s[3::-1]
print(s12)
#输出DCBA
s = 'ABCDEFGHIJKLMN'
s13 = s[3::-2]
print(s13)
# 输出DB
s = 'ABCDEFGHIJKLMN'
s14 = s[-1::-1]
s15 = s[::-1]
print(s14,s15)
#输出NMLKJIHGFEDCBA

7、对字符串的操作

s = 'alexWUsir'
s1 = s.capitalize() # 首字母大写
print(s1)
#输出Alexwusir
s = 'alexWUsir'
s2 = s.upper() #全部大写
s3 = s.lower() #全部小写
print(s2,s3)
#输出ALEXWUSIR alexwusir
s = 'alexWUsir'
s3 = s.swapcase() #大小写反转
print(s3)
#输出ALEXwuSIR
# 每个隔开(特殊字符或者数字)的单词首字母大写
s = 'alex*egon-wusir'
s4 = s.title()
print(s4)
#输出Alex*Egon-Wusir
#居中,空白填充
s = 'alexWUsir'
s5 = s.center(20,'~')
print(s5)
#输出~~~~~alexWUsir~~~~~~
s = 'al\tsir'   #\t表示前面占八位,少几位就补几位
s6 = s.expandtabs()
print(s6)
#输出al sir
test = "username\temail\tpasswd\npzw\t943969386qq.com\t123456\npzw\t943969386qq.com\t123456\n"
v = test.expandtabs(20)
print(v)
#输出
#username email passwd
#pzw 943969386qq.com 123456
#pzw 943969386qq.com 123456
s = 'alex二哥'
l = len(s) #表示输出此字符串长度
print(l)
#输出6
s = 'alexWUsir'
s7 =s.startswith('alex') #看字符串是否以alex开头
print(s7)
#输出True
s = 'alexWUsir'
s8 = s.startswith('e',2,5) #看字符串是否在第二个字符以e开头,注意顾头不顾尾原则
print(s8)
#输出True
# find 通过元素找索引,找不到返回-1
# index通过元素找索引,找不到报错
s = 'alexWUsir'
s8 = s.find('alex') #找出字符第一个字母所在位置
print(s8,type(s8))
#输出0 <class 'int'>
s = 'alexWUsir%'
s9 = s.strip('%') #删除字符串中所包含的符号,如果为('')则为删除空格符
print(s9)
#输出为alexWUsir
s = 'alexaa wusirl'
s10 = s.count('al') # 查找字符出现的次数,如果没有就为0,可以指定从第几位开始。
print(s10) # 输出1
s = ':alex:wusir:taibai'
l = s.split(':') #输出以:为分隔符,冒号会变为逗号
print(l)
#输出['', 'alex', 'wusir', 'taibai']
s = '来看待街坊邻居复合大师街坊法好的撒见客户'
s11 = s.replace('街坊','老王',1) #1表示替换一次,如果不写则全部替换
print(s11)
#输出来看待老王邻居复合大师街坊法好的撒见客户
test = "qwer"
v = test.isalnum()  #判断是否只包含字母或数字
print(v)
#输出True

8、字符串实例

一、

s_str= 'acEQ1'
you_input =input('请输入验证码,不区分大小写:')
if s_str.upper() == you_input.upper():
print('输入成功')
else:
print('请重新输入')

二、

username = input('请输入名字:').strip()
if username =='pzw':
print('恭喜pzw发财')

9、format的三种玩法 格式化输出

一、

s = '我叫{},今年{},爱好{},再说一下我叫{}'.format('pzw',36,'girl','pzw')
print(s)

二、

name = input('请输入名字:')
s = '我叫{0},今年{1},爱好{2},再说一下我叫{0}'.format(name,36,'girl')
print(s)

三、

name = input('请输入名字:')
s = '我叫{name},今年{age},爱好{hobby},再说一下我叫{name}'.format(age=18,name=name,hobby='girl')
print(s)

10、for循环

s = 'fhdsklfds'
for i in s:
print(i)
#打印s中全部字符

 

 
 
 

python note 03 切片及对字符串操作的更多相关文章

  1. Python数据科学手册-Pandas:向量化字符串操作、时间序列

    向量化字符串操作 Series 和 Index对象 的str属性. 可以正确的处理缺失值 方法列表 正则表达式. Method Description match() Call re.match() ...

  2. python(二)——list、字典、字符串操作

    列表——list 假设一种场景,想要存班里所有同学的名字,那应该拿什么存呢? 我们可以拿一个字符串去存,例如: stus = "s1,s2,s3,s4,s5……sn" 那我们要从里 ...

  3. Python 之列表切片的四大常用操作

    最近在爬一个网站的文档的时候,老师要求把一段文字切割开来,根据中间的文本分成两段 故学习了一段时间的切片操作,现把学习成果po上来与大家分享 1.何为切片? 列表的切片就是处理列表中的部分元素,是把整 ...

  4. 利用Python进行数据分析(15) pandas基础: 字符串操作

      字符串对象方法 split()方法拆分字符串: strip()方法去掉空白符和换行符: split()结合strip()使用: "+"符号可以将多个字符串连接起来: join( ...

  5. Python学习笔记-Day2-Python基础之字符串操作

    字符串的常用操作包括但不限于以下操作: 字符串的替换.删除.截取.复制.连接.比较.查找.分割等 这里将对字符串的内置操作方法进行总结归纳,重点是以示例的方式进行展示. 使用type获取创建对象的类 ...

  6. Python笔记(九):字符串操作

    (一)    字符串 单引号.双引号.三重引号都可以作为字符串的开始和结束,三重引号可以直接输入多行字符串.三重引号可能一般是用来写多行注释. (二)    r和\ r使字符串成为原始字符串,忽略所有 ...

  7. python学习day3------列表、元组、字符串操作

    一.列表 变量名后加中括号[],接下来介绍对列表进行查操作 #!/usr/bin/env python #-*- Coding:utf-8 -*- # Author:Eric.Shen test = ...

  8. Python 字符串操作及string模块使用

    python的字符串操作通过2部分的方法函数基本上就可以解决所有的字符串操作需求: python的字符串属性函数 python的string模块 1.字符串属性方法操作: 1.>字符串格式输出对 ...

  9. Python基础2 列表 元祖 字符串 字典 集合 文件操作 -DAY2

    本节内容 列表.元组操作 字符串操作 字典操作 集合操作 文件操作 字符编码与转码 1. 列表.元组操作 列表是我们最以后最常用的数据类型之一,通过列表可以对数据实现最方便的存储.修改等操作 定义列表 ...

随机推荐

  1. POI导出Execl文件,使JAVA虚拟机OOM

    由于在项目中使用POI导出execl,导致JAVA虚拟机OOM,采用以下方式解决问题: 原先方式: g_wb = new XSSFWorkbook(sourceFile.getInputStream( ...

  2. 一篇讲解如何调试pg 扩展的文章

    以下链接这片关于pg 扩展调试的文章挺不错,记录下 http://big-elephants.com/2015-10/writing-postgres-extensions-part-iii/     ...

  3. oracle错误汇总1

    这是遇见的第一个整个库正常,但某张表查询报错的情况 某张表数据可以查,但一排序查就报错 select * from acct_daily_bak; select * from acct_daily_b ...

  4. ubuntu16.04下怎么关闭x server

    按住ctrl+alt+f1,进入命令行. 输入sudo /etc/init.d/lightdm stopsudo /etc/init.d/lightdm status 重启xserver?输入sudo ...

  5. Centos7创建CA和申请证书 转自https://www.cnblogs.com/mingzhang/p/8949541.html

    Centos7.3创建CA和申请证书 openssl 的配置文件:/etc/pki/tls/openssl.cnf 重要参数配置路径 dir   = /etc/pki/CA               ...

  6. mongodb与mysql命令详细对比

    传统的关系数据库一般由数据库(database).表(table).记录(record)三个层次概念组成,MongoDB是由数据库(database).集合(collection).文档对象(docu ...

  7. new 对象时的暗执行顺序

    为什么称为暗执行顺序,因为当我们在new 对象时,其不是简简单单的new一个完事,它要首先检查父类的,静态的,非静态的等代码,就好像我们结婚生孩子一样,要先到祖宗那里,公安局那里,左邻右舍那里,告诉他 ...

  8. 知识点:synchronized 原理分析

    synchronized 原理分析 1. synchronized 介绍 在并发程序中,这个关键字可能是出现频率最高的一个字段,他可以避免多线程中的安全问题,对代码进行同步.同步的方式其实就是隐式的加 ...

  9. Linux下安装jdk8步骤详述

    作为Java开发人员,在Linux下安装一些开发工具是必备技能,本文以安装jdk为例,详细记录了每一步的操作命令,以供参考. 0.下载jdk8 登录网址:http://www.oracle.com/t ...

  10. liunx 部署 spring boot

    Xshell for Xmanager Enterprise 4 (Build 0232)Copyright (c) 2002-2014 NetSarang Computer, Inc. All ri ...