1、运算符  + - * / ** //

判断某个东西是否在某个东西里面用  in   not in  结果是布尔值      

name = "郑建文"
if "建文" in name:  #改成郑文,输出Error
    print('OK')
else:
    print('Error')   #OK 

"郑建文" 字符串
"郑“字符,
”建文“子字符串/子序列,连续挨着的才在里面
Pycharm里选中代码,按住ctrl点?,给你那几行注释掉了

name = "郑建文"
if "文" not in name :   #改成文1  输出为1
    print('1')
else:
    print('2')   # 2

布尔值:True 真 假 False
while True:

==
>
<
>=
<=
!= 不等于 推荐
<> 不等于
not (not False not True)
and or 拼接 (v = user =='1' and pwd = '2')

user = "alex"
pwd = "123"
v = user == 'alex' and pwd == "12" or 1 == 1 and pwd == "99854" and 1==2
print(v) # False

执行顺序从前到后一个一个算,
user == 'alex'是假的认为后面and全是假的,
user == 'alex' and pwd == "12" 是真的,遇到or不管后面说啥都认为是真的
True OR ==> True
True AND ==> 继续走
FLASE OR ==> 继续走
FLASE AND ==> FLASE
推荐使用括号

赋值运算:
c = c + a 等效于 c + = a 其他类似

结果是值
算术运算 a = 10 * 10
赋值运算 a = a + 1   a + = 1


结果是布尔值
比较运算符 a = 1 > 5
逻辑运算符 a = 1 > 6 or 1 == 1
成员运算符 a = "文" in "郑建文"

2、基本数据类型  

数字 int 

所有的功能,都放在int里
python3里不管数字有多大 都有int类型
python2超过某个数以后不叫int了叫long 长整型

a1 = 123
a1 = 456

- int
将字符串转换为数字

a = "123"
print(type(a),a)  #<class 'str'> 123
b = int(a)
print(type(b),b)  #<class 'int'> 123
					 
num = "0011" 
v = int(num, base=16)
print(v)             #17

- bit_lenght

# 当前数字的二进制,至少用n位表示

a = 123
v = a.bit_length()
print(v) # 7

# 1 1 输出1
# 2 10 输出2
# 3 11 输出2
# 4 100 输出3
# 5 101 输出3

pycharm里 写 int   ctrl点int 就有所有int型的可用功能 

字符串  str 

s1 = "asdf"
s2 = "asdffas"
test = "aLex"

首字母大写

v = test.capitalize()
print(v)     #Alex

所有变小写,casefold更牛逼,很多未知的对相应变小写,例如法国的  

test = "aLex" 
v1 = test.casefold()
print(v1)            #alex
v2 = test.lower()
print(v2)            #alex

设置宽度,并将内容居中  

20 代指总长度
* 空白未知填充,一个字符,可有可无
center(self, width, fillchar=None)

test = "aLex"			 
v = test.center(20,"中")
print(v)                    #中中中中中中中中aLex中中中中中中中中

去字符串中寻找,寻找子序列或者字符的出现次数   还有特产可带可不带,哪开始哪里结束   count(self, sub, start=None, end=None)

	# 012345678
test = "aLexalexr"
v = test.count('ex')
print(v)             #2
test = "aLexalexr"
v = test.count('ex',5,6)
print(v)             #0

下面两个先不讲
encode
decode

以什么什么结尾
以什么什么开始

test = "alex"
v = test.endswith('ex')
print(v)                  #True 
v = test.startswith('ex')
print(v)                  #False

先不讲
#test = "12345678\t9"
#v = test.expandtabs(6)
#print(v,len(v))

从开始往后找,找到第一个之后,获取其位置  find(self, sub, start=None, end=None)

test = "alexalex"
#未找到 -1    >= 5   <8
v = test.find('ex',5,8)  #8改成7 输出-1 没找到。  5,8都不加输出2
print(v)  #6

index找不到,报错   忽略,用find  

test = "alexalex"
v = test.index('8')
print(v)    #error  8改成a 输出0

格式化,将一个字符串中的占位符替换为指定的值  

test = 'i am {name}, age {a}'
print(test)    #i am {name}, age {a}
v = test.format(name='alex',a=19)
print(v)       #i am alex, age 19

#根据出现的顺序替换,从0开始不是从1开始  

test = 'i am {0}, age {1}'
print(test)  #i am {0}, age {1}
v = test.format('alex',19)
print(v)     #i am alex, age 19

格式化,传入的值 {"name": 'alex', "a": 19}只能是这种格式  

test = 'i am {name}, age {a}'
v1 = test.format(name='df',a=10)
v2 = test.format_map({"name": 'alex', "a": 19})
print(v1) #i am df, age 10
print(v2) #i am alex, age 19

 字符串中是否只包含 字母和数字 

test = "123"
v = test.isalnum()
print(v)      #True

  

 

  

  

  

     

posted on 2019-07-15 13:50  acrobatbamboo  阅读(184)  评论(0)    收藏  举报