02.28 day03
- print(1 or 3 > 2 and 4 < 5 or 6 and 2 < 7)
#
# while True:
# print(11)
# print(22)
# # break
# # quit()
# exit('网络连接失败!!')
# print(33)
#
# print(44)- # day02作业及默写
# Day2作业及默写
# 1.判断下列逻辑语句的True,False.
# 1)1 > 1 or 3 < 4 or 4 > 5 and 2 > 1 and 9 > 8 or 7 < 6
# 2)not 2 > 1 and 3 < 4 or 4 > 5 and 2 > 1 and 9 > 8 or 7 < 6
# 2.求出下列逻辑语句的值。
# 1),8 or 3 and 4 or 2 and 0 or 9 and 7
# 2),0 or 2 and 3 and 4 or 6 and 0 or 3
# 3.下列结果是什么?
# 1)、6 or 2 > 1
# 2)、3 or 2 > 1
# 3)、0 or 5 < 4
# 4)、5 < 4 or 3
# 5)、2 > 1 or 6
# 6)、3 and 2 > 1
# 7)、0 and 3 > 1
# 8)、2 > 1 and 3
# 9)、3 > 1 and 0
# 10)、3 > 1 and 2 or 2 < 3 and 3 and 4 or 3 > 2
# 4.while循环语句基本结构?
# 5.利⽤while语句写出猜⼤⼩的游戏:
# 设定⼀个理想数字⽐如:66,让⽤户输⼊数字,如果⽐66⼤,则显示猜测的结果⼤
# 了;如果⽐66⼩,则显示猜测的结果⼩了;只有等于66,显示猜测结果正确,然后退出
# 循环。
# 6.在5题的基础上进⾏升级:
# 给⽤户三次猜测机会,如果三次之内猜测对了,则显示猜测正确,退出循环,如果
# 三次之内没有猜测正确,则⾃动退出循环,并显示‘太笨了你....’。- # 7.使⽤while循环输出 1 2 3 4 5 6 8 9 10
# count = 0
# while count < 10:
# count += 1
# if count == 7:
# pass
# else:
# print(count)- # count = 0
# while count < 10:
# count += 1
# if count == 7:
# continue
# print(count)- # 8.求1-100的所有数的和
# 9.输出 1-100 内的所有奇数
# 10.输出 1-100 内的所有偶数- # 11.求1-2+3-4+5 ... 99的所有数的和
- # s = 0
# count = 1
# while count < 100:
# if count % 2 == 1:
# s += count
# else:
# s -= count
# count += 1
# print(s)- # 12.⽤户登陆(三次输错机会)且每次输错误时显示剩余错误次数(提示:使⽤字符串格
# 式化)- count = 1
while count < 4:
username = input('请输入姓名:')
password = input('请输入密码:')
if username == 'alex' and password == 'sb':
print('登录成功')
break
else:
print('登录失败,剩余%d次,请重新登录' %(3-count))
'''
count 机会
1 2
2 1
3 0
'''- # 13.简述ASCII、Unicode、utf -8编码
# 14.简述位和字节的关系?
# 明⽇默写内容:
# 1. 求1~100所有数的和。
# 2. break continue的含义区别
# 3,Unicode,utf -8,GBK,每个编码英⽂,中⽂,分别⽤⼏个字节表示。
一、int

- 十进制:
- 1 23 100 10000
- 1.23 1.56 3.1415926
- 二进制:
- 01010101010101
- 八进制:
- pass
- 十六进制:
- 0 1 2 3 4 5 6 7 8 9 A B C D E F
- pass
- 16: 1 * 16 + 6 = 22
- 十进制与二进制的转化。
- 二进制 -----> 十进制
- 0010 0111
- 1 * 2**0 + 1 * 2**1 + 1* 2**2 + 1 * 2**5 = 39
- 十进制转化成二进制
- 42 ------> ? 101010

二、bool

- bool
- True False
- int str bool
- int str
- int bool
- str bool
- str ---> bool 非空即True
- s1 = 'fsdafa'
- s1 = '太白'
- s1 = ' '
- s1 = ''
- # print(bool(s1))
- bool ---> str 没有意义
- print(str(True),type(str(True)))

三、str
- python中凡是用引号引起来的都是字符串
1,存储相对少量的数据。
2,描述信息。
3.1:字符串的索引与切片
- 每个字符都有对应的号码。
通过索引(切片)出来的内容都是字符串类型。
- s = 'python字符串的使用'
3.1.1:通过索引(下标) 号牌 找到对应的元素。

- s1 = s[0]
- print(s1,type(s1))
- s2 = s[2]
- print(s2)
- s3 = s[-1]
- print(s3)
- s4 = s[-2]
- print(s4)

3.1.2:按照切片找值:顾头不顾尾

- s1 = s[:6] # 从0开始可以省略不写
- print(s1)
- s2 = s[6:9]
- print(s2)
- s3 = s[:] # 从头取到尾
- print(s3)
- s4 = s[6:]
- print(s4)


- 切片+步长
- s5 = s[:5:2]
- print(s5)
- 反向取值必须加反向步长。
- s6 = s[-1:-4:-1]
- print(s6)
- s7 = s[-1:-6:-2]
- print(s7)
- [起始索引: 结尾索引+1: 步长] # 切片取值

3.2:字符串的常用操作方法
- 大前提:对字符串的任何操作都是产生一个新的字符串,与原字符串没有关系
- s = 'yifan'

- 1, capitalize 首字母大写,其余字母都小写 **
- s1 = s.capitalize()
- print(s1)
- print(s)
- 2, upper() 全部变成大写 ***
- 3, lower() 全部变成小写 ***
- s2 = s.upper()
- print(s2)
- 举例:
- code = 'AeRf'.upper()
- username = input('请输入用户名:')
- your_code = input('请输入验证码:').upper()
- # if your_code == 'AERF' or your_code == 'aerf' or .... :
- if your_code == code:
- if username =='alex':
- pass
- else:
- print('验证码输入有误')


- 4,center 居中可设置填充物 *
- s3 = s.center(20)
- s3 = s.center(20, '*')
- print(s3)
- 5,swapcase 大小写反转 *
- s = 'yifan'
- s4 = s.swapcase()
- print(s4)
- s = 'yifan is*agood77man'
- 6,title 非字母隔开的每个单词的首字母大写 *
- s5 = s.title()
- print(s5)


- 7,strip()
默认去除字符串两边的空格,换行符,制表符 ***- 只是去除 左边lstrip() 右边 rstrip()
- s = ' yifan\n'
- s = '\tyifan\n'
- print(s)
- s6 = s.strip()
- print(s6)
- name = input('请输入姓名:').strip()
- if name == 'yifan':
- print('输入正确')
- else:
- print('输入错误')
- s = 'qw*awle@xyt@'
- # 可设置去除的字符
- s6 = s.strip('qyt@w*')
- print(s6)


- 8,split ***
- str ---> list
- 默认按照空格分割,把字符串分割成列表
- s = '武大 小潘 西门'
- l = s.split()
- print(l)
- 指定字符分割。
- s = '武大,小潘,西门'
- s = '武大a小潘a西门'
- l = s.split(',')
- l = s.split('a')
- print(l)
- s = 'a武大a小潘a西门'
- print(s.split('a'))
- 指定分割次数
- s = '武大a小潘a西门'
- rsplit() 从右边开始分割
- print(s.split('a',1))
- 9,join
- 操作列表时,列表里面的内容必须全部是字符串类型
- 把列表转成字符串
- 连接符.join(iterable)
- s = 'yifan'
- s7 = '*'.join(s)
- s7 = '_'.join(s)
- s7 = 'sb'.join(s)
- print(s7)
- l1 = ['wusir', 'alex', 'taibai']
- s7 = ','.join(l1)
- print(s7)


- 10,startswith() ***
- # 判断以什么为开头 可以切片。
- 11, endswith()
- # 判断以什么为开头 可以切片。
- s = 'alextaibai'
- s8 = s.startswith('a')
- s8 = s.startswith('alex')
- s8 = s.startswith('alex')
- s8 = s.startswith('ta', 4, 9) # 顾头不顾尾
- print(s8)
- # find :通过元素获取其索引,找到第一个就返回,找不到会返回-1.
- # index:通过元素获取其索引,找到第一个就返回,找不到会报错。
s = 'taibai'- s9 = s.find('a')
- s9 = s.find('ai')
可以切片- s9 = s.find('a',2,)
- print(s9,type(s9))
- s9 = s.find('W')
- s9 = s.index('W')
- print(s9)
- 12,replace ***
- s = 'yifan 是一个很oo的人,非常oo,太oo了'
- s10 = s.replace('oo', 'yy')
- s10 = s.replace('oo', 'yy', 2)
- print(s10)


- 13,format ***
- s = '我叫{},今年{},性别{}'
- 方法一:
- s11 = s.format('一帆', '23', 'man')
- print(s11)
- 方法二:
- s = '我叫{0},今年{1},性别{2},我依然叫{0}{0}{0}'
- s11 = s.format('一帆', '23', 'man')
- print(s11)
- 方法三:
- s = '我叫{name},今年{age},性别{sex},我依然叫{name}'
- s11 = s.format(name='一帆', sex='man', age='23')
- print(s11)
- 14,is系列:
- name='yifan123'
- print(name.isalnum()) #字符串由字母或数字组成print(name.isalpha()) #字符串只由字母组成
- print(name.isdigit()) #字符串只由数字组成 ***
- i = '1000a'
- if i.isdigit():
- int(i)
- else:
- print('重新输入')
- s = 'fdjskfldjsafkldjasfl'
- 15,count 计数:字符串某个字符出现的次数
- print(s.count('f'))


- 16, 公共方法
- len()获取字符串的字符个数,总长度
- print(len(s),type(len(s)))
- s = 'f'
- s = 'f '
- s = ' '
- print(s.isspace())

四:for循环

- ''' 利用while循环 依次打印字符串的每个字符
- s = 'dklwfa'
- # print(s[100])
- len()
- d s[0]
- k s[1]
- l s[2]
- ...
- a s[count]
- '''
- # print(s[0])
- # print(s[1])
- # print(s[5])
- s = 'dkfdsafdasfdasfdaslsfa'# 最后一个元素的索引值与总长度有关 index = 0 while index < len(s): print(s[index]) index += 1
- for 循环 :有限循环
s = 'dkfdsafdasfdasfdaslsfa'- '''
- for 变量 in iterable:
- pass
- '''
- for i in s: print(i) if i == 's': break
- # break
- # continue
- # for else: 用法与while else相同

1.查看一个类中所有的可用方法:
[x for x in dir(str) if not x.startswith('_')]
sorted([x for x in dir(str) if not x.startswith('_')])
2.str类中find,index的区别
startswith:
endswith:
判断一个文件,是否是jpg格式的图片?
filename后缀有可能大写和小写混用,所以要先统一一下。统一成大写或者小写都可以。
伪代码:
if filename.lower().endswith('.jpg'):
ok
格式:
[起始值:结束值:顺序和步长]
1.切片的顺序取决于最后一个参数,正数:正序;负数:倒序,默认是正序
2.正序时起始值在结束值右侧,或者倒序时起始值在结束值左侧,都会返回空字符串。
s = 'Hello'
s[3:2:2] -> ''
s[1:3:-2] -> ''
即:切片不会跨越字符串的首尾。
3.正数索引和负数索引可以混用。只要能指到正确的元素即可。
5.总结str类中涉及到从右侧开始的操作:
rfind 从右侧查找
rindex 从右侧查找
rjust 从右侧对齐
rstrip 从右侧删除空白字符
rsplit 从右侧切分
rpartition 从右侧分组
02.28 day03的更多相关文章
- 梦想MxWeb3D协同设计平台 2019.02.28更新
梦想MxWeb3D协同设计平台 2019.02.28更新 SDK开发包下载地址: http://www.mxdraw.com/ndetail_10130.html 在线演示网址: http://www ...
- Cheatsheet: 2015.02.01 ~ 02.28
Other API Best Practices: API Management Rewriting History with Git Rebase .NET Announcing Microsoft ...
- Cheatsheet: 2014 02.01 ~ 02.28
Database Managing disk space in MongoDB When to use GridFS on MongoDB .NET The Past, Present, and Fu ...
- 2019.02.28 bzoj4199: [Noi2015]品酒大会(sam+线段树)
传送门 题意:给一个串,每个位置有一个权值,当S[s...s+len−1]=S[t...t+len−1]&&S[s...s+len]̸=S[t..t+len]S[s...s+len-1 ...
- 2019.02.28 bzoj3527: [Zjoi2014]力(fft)
传送门 fftfftfft菜题. 题意简述:给一个数列aia_iai,对于i=1→ni=1\rightarrow ni=1→n求出ansi=∑i<jai(i−j)2−∑i>jai(i−j ...
- EZ 2018 02 28 NOIP2018 模拟赛(二)
我TM的终于改完了(其实都是SB题) 题目链接:http://211.140.156.254:2333/contest/53 T1送分,T2前40%送分,还有骗分机制在里面,T3暴力50 所以200应 ...
- Cheatsheet: 2018 11.01 ~ 2019 02.28
Golang FromXToGo micro - A microservice toolkit Other Easy parsing of Excel spreadsheet format with ...
- Cheatsheet: 2018 01.01 ~ 02.28
JAVA How to Improve the Performance of a Java Application Java Memory Management Writing Java Micros ...
- Cheatsheet: 2017 02.01 ~ 02.28
Web Debouncing and Throttling Explained Through Examples What is TypeScript? An Absolute Beginner's ...
随机推荐
- JAVA基础--JAVA语言组成01
2. 标识符 2.1. 定义: 就是用来起到 标识作用的符号: (就是程序员对自己定义的东西起的名字) 2.2. 命名规则(语法规定的,必须遵守的): 1.可以由大小写字母.数字.下划 ...
- POJ2367【拓扑排序】
很裸的拓扑排序~ //#include <bits/stdc++.h> #include<iostream> #include<string.h> #include ...
- Codeforces626B - Cards【模拟】
题意: 两张相同可以合并成相同: 两张不同可以产生另外一个不同: 求最终的可能颜色: 思路: 模拟啊. 总共也就那么几种情况,具体看挫code--. #include<iostream> ...
- bzoj 3573: [Hnoi2014]米特运输【树形dp+瞎搞】
阅读理解题,题意是以1为根的有根树,每个点有点权,求修改最少点权能使每个点的权值等于其所有子节点权值之和并且每个点的所有子节点权值相等的个数 然后就比较简单了,就是有个技巧是数太大,需要对所有操作都取 ...
- python 的多线程执行速度
python 的多线程有点鸡肋,适用场景有局限,单位时间多个核只能跑一个线程. 有泳池一个,四个泵,但只有一个人,一人只能开启管理着其中一个,所以四个泵没什么用.但是,如果泵的工作时间与冷却恢复时间是 ...
- 【UVA - 10474 】Where is the Marble?(排序)
Where is the Marble? Descriptions: Raju and Meena love to play with Marbles. They have got a lot of ...
- 合作网络(Corporative Network )并查集+路径压缩
#include <iostream> #include <algorithm> #include <string> using namespace std; + ...
- JSP | 基础 | 在同一表单中提交两个不同的action
通过与跟JS配合使用实现需求 <head> <title>Chat Room</title> <script type="text/javascri ...
- JSP | 基础 | JSP行为 | incline && forward
语法 描述 jsp:include 用于在当前页面中包含静态或动态资源 jsp:forward 从一个JSP文件向另一个文件传递一个包含用户请求的request对象 index.jsp <%@ ...
- eclipse | 配置JRE
Window --> Preference --> Java ---> Installed JREs