Python之第二天的努力--快捷方式,编码,int,bool,str,for循环
1.快捷方式及pycharm应用
Alt+Ctrl+A 截图
Ctrl+/ 快速注释
shift+tab 多行退缩进
右键 Refactor 修改名称
修改背景:
2.编码初识:
-
编码:密码本:二进制与文字的对应关系。
-
ASCLL:最早的密码本:二进制与 英文字母,数字,特殊字符的对应关系
01100001 a
'abc': 01100001 01100010 01100011 :三字节
-
GBK国标:英文...一个字节 中文...两个字节
- 英文字母,数字,特殊字符 ASCLL
- 中文自己编写
'ab憨憨':6个字节
-
Unicode:万国码。兼容性高,与任何密码本都有映射关系
所有都占用4个字节
-
UTF-8:
英文 :使用ASCLL 一个字节
欧洲:两个字节
中文:三个字节
'ab憨憨':8个字节
-
3.昨日练习
-
设定一个理想数字如:66 让用户输入数字,如果比66大,泽显示猜测结果大了;如果比66小,则显示猜测结果偏小 # 给用户三次机会,如果三次之内猜对了 则显示猜测正确退出循环 如果三次之内没有猜对,自动退出并显示太笨了
flag = 66
count = 0
while count < 3:
# 3次
# input
# if elif else
num = int(input('请输入数字:'))
if num > 66:
print('猜大了')
elif num < 66:
print('猜小了')
else :
print('恭喜你猜对了')
break
count += 1
else:
print('太笨了')
-
依次输入1 2 3 4 5 6 8 9 10count = 0 while count < 10: count += 1 if count == 7: continue print(count) -
求1—2+3-4+5...99的和count = 1 s = 0 while count < 100: if count % 2 == 0: s = s - count else: s = s + count count += 1 print(s)
4.基础数据类型
- 1000 222 33 4 : int + - * /
- '铁憨憨' : str 存储少量数据 + *int 切片....
- True False bool 判断真假
- [10, True, 'aaa', [1,2,3]] list 列表 存储大量数据
- (10, True, 'aaa', [1,2,3]) tuple 元组 存储大量数据 不可改变里面的元素
- {'name':'猪憨憨'} dict 字典 存储大量的关联性数据,查询速度非常快
5.int
-
bit_lenth 有效的二进制长度i = 4 # 3 print(i.bit_length()) i = 10 # 4 print(i.bit_length())
6.bool str int 转化
# bool <---> int
'''
True 1 False 0
非零 True 0是False
'''
# str <---> int
'''
s1 = 10 int(s1) : 必须是数字组成
i = 100 str(i)
'''
# str bool
# 非空即True
# s1 = 'asdf'
# print(bool(s1)) # True
#
# s1 = ' '
# print(bool(s1)) # True
#
# s1 = ''
# print(bool(s1)) # False
7.str
-
索引
s1 = 'python世界' # 对字符串进行的索引,切片出来的数据都是字符串类型 # 从左至右有顺序,下标,索引 s2 = s1[0] print(s2,type(s2)) s3 = s1[6] print(s3,type(s3)) s4 = s1[-1] print(s4,type(s4)) -
切片
s1 = 'python世界' # 对字符串进行的索引,切片出来的数据都是字符串类型 # 从左至右有顺序,下标,索引 # s2 = s1[0] # print(s2,type(s2)) # s3 = s1[6] # print(s3,type(s3)) # s4 = s1[-1] # print(s4,type(s4)) # 按照切片取值 # 顾头不顾腚 # s5 = s1[0:5] # s5 = s1[:5] # print(s5) # s6 = s1[6:] # print(s6) # 切片步长 s7 = s1[:5:2] print(s7) # 倒序 s8 = s1[-1:-6:-1] print(s8) # 按索引:s1[index] # 按切片:s1[start_index: end_index] # 按切片加步长:s1[start_index: end_index: 2] -
常用操作
-
# upper lower s1 = s.upper() s2 = s.lower() print(s1) # 变大写 print(s2) # 变小写应用:不区分大小写
username = input('用户名') password = input('密码') code = 'QweA' print('验证码为:',code) your_code = input('请输入验证码,不区分大小写:') if your_code.upper() == code.upper(): if username == 'abc' and password == '123': print('登录成功') else: print('用户名或密码错误') else: print('验证码错误') -
# startswith endswith 判断字符串的开始与结束s = 'Python世界' # startswith endswith 判断字符串的开始与结束 print(s.startswith('P')) # True -
# replace(替换前,替换后,次数(不填默认全部替换)) msg = '猪憨憨 很厉害,猪憨憨王者打的很好' msg1 = msg.replace('猪憨憨','狗能能') msg2 = msg.replace('猪憨憨','狗能能',1) print(msg1) print(msg2) -
# strip:空白: 空格 \t \n # 去除空白 s = ' \n弟弟\t' # print(s) s1 = s.strip() print(s1)# 去除指定字符 s = 'qqw弟弟asd' s1 = s.strip('asdqw') print(s1) -
# split # 非常重要******** 分割 # 默认按照空格分隔,返回一个列表 # 指定分割符()内 # str--->list # s = 'zs ls ww' # s1 = s.split() # s = 'zs:ls:ww' # s1 = s.split(':') # # print(s1) s2 = ':zs:ls:ww' print(s2.split(':')) print(s2.split(':',2)) -
# join 非常好用 # s1 = 'zs' # s2 = '+'.join(s1) # print(s2,type(s2)) s1 = ['zs','ls','ww'] s2 = ':'.join(s1) print(s2) -
# count 数 s = 'ajhdfhaufhaadshsiui' print(s.count('a')) -
# format: 格式化输出 # 第一种用法 # msg = '我叫{}今年{}性别{}'.format('小疯子',18,'男') # print(msg) # 第二种用法 msg = '我叫{0}今年{1}性别{2}我依然叫{0}'.format('小疯子',18,'男') print(msg) # 第一种用法 msg1 = '我叫{name}今年{age}性别{sex}'.format(name = '小疯子',age = 18,sex = '男') print(msg1) -
# is系列: name = 'hcy123' print(name.isalnum()) # 判断字符串是不是由字母或数字组成 print(name.isalpha()) # 判断字符串是不是只由字母组成 print(name.isdecimal()) # 判断字符串是不是只由十进制组成 s1 = input('请输入金额') if s1.isdecimal(): int(s1) else: print('输入有误')
-
8.for循环
# for循环
'''
有限循环
for 变量 in iterable:
pass
'''
# s1 = '我最喜欢的歌手:华晨宇'
# for i in s1:
# print(i)
s1 = '我最喜欢的歌手:华晨宇'
for i in s1:
if i == ':':
break
print(i)

浙公网安备 33010602011771号