python的格式化与编码方式运算符
格式化输出
% s d
%%:%输出为正常的%号
%:占位符 s:str d:数字
实例:
1 # 格式化输出方法一
2 name = input('请输入姓名:')
3 age = input('请输入年龄:')
4 job = input('请输入工作:')
5 msg = '''---------------- info of %s ----------------
6 Name = %s
7 Age = %d
8 job = %s
9 ---------------- end ---------------- ''' % (name, name, int(age), job)
10 print(msg)
#格式化输出:format三种方式
格式:
s = '{},{},{}'.format('1','2','3')
实例:
s = '我叫{},今年{},我叫{}'.format('test','18','test')
print(s)
格式:
s = '{0},{1},{0}'format('test','18')
实例:
s = '我叫{0},今年{1},我叫{0}'.format('test','18')
print(s)
格式:
s = '{name},{age},{name}'.format(name='test'age='18')
实例:
s = '我叫{name},今年{age},我叫{name}'.format(name='test',age='18')
print(s)
while else:在while循环语句总如果被break打断就不会执行else里边的内容,如果不被break打断就会执行else里边的内容。
编码方式
电脑的传输,还有实际存储的实际上都是0000111000
美国ascii码 为了解决这个全球化的文字问题,创建了一个万国码unicode
一个字节可以表示所有的英文,特殊字符,数字等等
unicode一个中文用四个字节表示
utf-8一个中文用三个字节去表示
00001110 8位bit == 1byte(字节)
1byte 1024byte(字节) == 1kb
1kb 1024kb == 1MB
1MB 1024MB == 1GB
1GB 1024GB == 1TB
运算符
算数运算符
+ 加
- 减
* 乘
/ 除
% 取余
** 幂
比较运算符
!= 不等于
== 等于
> 大于
< 小于
>= 大于等于
<= 小于等于
赋值运算
= 等于
+= 加等于
-= 减等于
*= 乘等于
/= 除等于
%= 取余等于
逻辑运算符
and 并且都为真才为真
or 或者一个为真就为真
not 表示取反运算
优先级:()>not>and>or
x or y x为非0,则返回x
x and y x为非0,则返回y
int---bool 非零转换为bool True
字符串的索引与切片
索引就是文件的下标,第一个从0开始。
实例:
str = 'ABCDEFG'
a = str[0]
print(a)
输出结果为:A
str = 'ABCDEFG'
a = str[0:3]
print(a)
输出结果为:ABC
规律:顾头不顾尾
str = 'ABCDEFG'
a = str[-2]
print(a)
输出结果为:F
跳着区值:格式为 【索引:索引:跳跃长度】
str = 'ABCDEFG'
a = [0:5:2]
print(a)
输出结果为:ACE
倒着取值
str = 'ABCDEFG'
a = str[4:0:-1]
print (a)
输出结果为:EDCB
输出所有
str = 'ABCDEFG'
a = str(:)
print(a)
输出结果为:ABCDEFG
字符串的常用方法
str = 'testBFtest'
s1 = str.capitalize()#只有首字母大写
#全部大写,小写
s2 = str.upper() #全部大写
s3 = str.lower() #全部小写
print(s1)
print(s2)
print(s3)
#大小写反转
s4 = str.swapcase()##大小写反转
print(s4)
#每个用空格或者特殊字符隔开的首字母大写
str = 'zhang wang li'
s5 = str.title()
print(s5)
# #设置字符串的长度和填充物并居中
# s = 'adsdsdWdf'
#s6 = s.center(20,'#')
# s7 = s.
# print(s6)
print(1 or 1<3 and 2)
i = 3
b = bool(i)
print(b)
#字符串的操作
#居中,空白填充
s = 'alexWUsir'
s6 = s.center(20,'#')
print(s6)
#输出结果:#####alexWUsir######
#从 开始往前不足8位空格补齐
s = 'alex WUsir'
s7 = s.expandtabs()
print(s7)
#输出结果:alex WUsir
#公共方法
s='ad12a3154512315大哥'
s8=len(s)
print(s8)
#判断以什么开头,或者以什么结尾,返回值是bool值
#开头是startswith,结尾是endswith
s = 'alexWUsir'
s9=s.startswith('al')
s91=s.startswith('e',2,5)
s92=s.endswith('e',1,3)
print(s9)
print(s91)
print(s92)
#find通过元素找索引,找不到返回-1
#index通过元素找索引找不到报错
s = 'alexWUsir'
s10 = s.find('W')
#s101 = s.index('w')
print(s10)
#strip默认是去掉前后空格
#rstrip从右开始删,左边不动
#lstrip从左开始删,右边不动
s = ' alexWUsir '
s11 = s.strip()
print(s11)
#conut 计数
s12 = s.count('al')
print(s12)
#split分割 str--->list
s = 'word set ore'
s13 = s.split(' ')
print(s13)
#replace替换格式为replace(旧,新,替换的次数(默认替换所有))
s = 'test 123 456'
ss = s.replace('123','456',1)
print(ss)
#####is系列,判断,返回值是false或者是true
name='taibai123'
print(name.isalnum()) #字符串由字母或数字组成
print(name.isalpha()) #字符串只由字母组成
print(name.isdecimal()) #字符串只由十进制组成