python基础 运算符和字符串

#斜体表示不熟悉的知识点

链式赋值

x=y=123, x=123,y=123

系列解包赋值

a,b,c=4,5,6

类型介绍(type)

整数:10/浮点:3.14/布尔:True/字符串:“sxt”
数字

运算符

浮点除法:/,整除://,取余数:%,幂:**,同时取得商和余数:divmod,返回的是元组

  • 十进制转化为二进制:
    转化原理:
0 0
1 1
2 10
3 11
4 100
5 101
6 110
7 111
8 1000
用二进制 0B101
用八进制 0O10
十六进制 0X8
  • 使用int()实现类型转换:
    数字:不是四舍五入,是舍去小数
    布尔型:True 转化为1,False转化为0
    自动转型:整数+浮点=浮点,按浮点数进行运算,整数有多大:任意大小,故适合科学运算

  • 使用float()实现类型转换:
    round实现四舍五入

  • 增强型赋值运算符
    简写:+|*|/|//|1|%=1

时间

计算机默认从1970年1月1日0:00开始计算到现在的秒数。
import time
time.time()表示当前时刻

布尔值

  1. 运算符:== | != | > | < | >= | <= |
  2. 逻辑运算符: or | and | not

同一运算符

  1. is : 判断两个标识符是不是同一个对象,判断两者的id是否相同
  2. ==:判断两者的value是不是相等的
  3. is 比 ==效率高,在判断变量和None的时候,应该使用is

字符串

  1. 不可变
  2. 字符串的编码: 使用Unicode,默认16位
    操作:ord(),字符→编码,chr(),编码→数字
  3. 创建字符串:字符串里有引号的情况,内有单引号,外用双引号,内有双引号,外用单引号, 或者使用转义字符
  4. 创建多行字符串,三个单引号或者双引号
  5. 空字符串,len():查字符串长度

转义字符

+ 特殊字符:换行:\n | \r(回车) | \t | ’ | " | \ | \(续航符)
8. 字符串拼接:拼接:+或者放在一起,字符串连接,用XX把列表里面的元素连接起来:“XX”.joint(a),a是字符串

a = ["aa","b","c"]
print("love".join(a))`
aaloveblovec
#增加一个元素
a.append('sxt')
aabcsxt

字符串复制

“ 我是字符串”*3=我是字符串我是字符串我是字符串
9. 不换行打印:print(XXX,end=‘我是任意字符串都可以’)
10. 输入: input()

my_name = input("请输入名字")
  1. str(520) '520'
  2. 提取字符串:正向索引和反向索引
a = "adad weqwq"
a[-1]
q

replace()

不改变a字符串

生成一个新的字符串,且若字符串有若干个相同元素,修改这个元素,所有元素都会相应改变

a = "sasd"
a.replace("a","LLLL")
sLLLLsd
a
sasd

字符串切片

|[:]|前闭后开|
|[1:25:2]|从第二个元素取到24个元素,步长为2|
| [::-1]|从右到左反向取元素|

字符串切割

split():空白的话,则以空白键/换行符/制表符为标准,加上某个“ ”,则是分割前后

字符串比较

字符串驻留机制:只包括下划线英语和数字的时候,创建同一个对象,包括#这种符号的时候创建不同对象
17. 判断字符串是否在字符串中:in or not in

字符串查找

| len | 字符串长度 |
|startswith|是否以某个字符串开头|
|endswith | 是否以指定字符串结尾 |

a = [ 'Makefile', 'foo.c', 'bar.py', 'spam.c', 'spam.h' ]
# endswith 传入的参数必须要是元组,而不能是list 或者 set
b = [name for name in a if name.endswith(('.c','.h'))]
print(b)

运行结果

['foo.c', 'spam.c', 'spam.h']

|find| 第一次出现指定字符串的位置 |
|rfind|最后一次出现指定字符串的位置|
| count| 指定字符串出现了多少次 |
|isalnum| 所出现的全是字母和数字 |
|strip()|去除首尾指定字符串 |

大小写转换

|a.title| 所有单词首字母大写|
|a. capitalize|a的句子首字母大写|
|a.upper | 所有字母大写 |
|a.lower| 所有字母小写 |
|a.swapcase| 大小写反过来 |

格式排版

e = "dd"
print(e.center(20))
print(e.center(15,"&"))
print(e.ljust(10,"*"))
         dd         
&&&&&&&dd&&&&&&&&
dd********

其他检查

|isalnum| 是否全为字母或数字 |
|isalpha|是否只由字母构成|
|isdigit|是否全为数字|
|isupper|是否全为大写|
|islower|是否全为小写|
|isspace|是否全为空白格|

字符串格式化

a = "我的名字是是{0},我的年纪是{1}"
print(a.format("didi","18"))
b = "我的名字是{name},我的年纪是{age}"
print(b.format(name="didi",age=19))
我的名字是是didi,我的年纪是18
我的名字是didi,我的年纪是19
a = [0, 1, 2, 3, 4]
print('{b[0]}-{b[1]}-{b[3]}'.format(b=a))
################# 运行结果 ###############
0-1-3

填充和对齐

print("我喜欢的数字是{0:*>9}".format(2))
#冒号表示对几位数的需求,^<>表示居中,右对齐,左对齐,*>9表示格式
我喜欢的数字是********2
发布了25 篇原创文章 · 获赞 2 · 访问量 841

猜你喜欢

转载自blog.csdn.net/Di_Panda/article/details/104986590