Python全栈开发【第二篇】:运算符、基本类型与字符串

上一篇补充:

  1、编码:一个字节为8位二进制,编码方式最初为ASCII,然后出现Unicode,后来出现Unicode的压缩版--Utf-8,之后又Gbk编码方式。一个汉字,以Utf-8编码是3个字节,以Gbk编码是2个字节。

  2、while循环:a.while else

         b.continue break

          continue,跳出当前循环,进入下一次循环

          break,跳出所有循环 

  3、上一篇习题最后一道比较难处理:

 1 count = 0
 2 while count < 3:
 3     user = input('>>>')
 4     pwd = input('>>>')
 5     if user == 'alex' and pwd == '123':
 6         print('欢迎登陆')
 7         print('..........')
 8     break
 9     else:
10     print('用户名或者密码错误')
11     count = count + 1      

 

python开发IDE:pycharm、eclipse,二者选一个安装使用即可,前几天做毕设重装系统,导致我现在的pycharm打不开了,试了几种方法也不好用,打算过几天装个eclipse尝尝,现在写的都是单个文件执行,使用python自带的IDE也是可以的,后期多个文件不知道能不能继续用python自带的IDE,如果使用python自带的IDE,则添加注释为Alt + 3,消除注释为Alt + 4,如果使用pycharm记得要是专业版,不要汉化,具体安装和激活参考其他互联网文章,ctrl + ? 为注释快捷键。

1、运算符

  结果是数值

    算数运算 

1 a = 10 * 10
2 print(a)

     赋值运算 

1 a = a + 1    #亦可写为 a+=1
2 print(a)

  结果是布尔值  True  真  假  False

    比较运算

1 a = 1 > 2
2 print(a)

输出结果为False

    逻辑运算   与 and  、或 or 、非 !

1 a = 1>2 or 1==1
2 print(a)

输出结果为True   

    成员计算 in

1 a = "" in "不吃饭"    #in 或者 not in
2 print(a)

输出结果为True

2、基本数据类型

  1、数字 int ,所有的功能,都放在int里,在pycharm中,按一下Enter,新起一行,输入int,长按Ctrl,鼠标由箭头变成小手,然后用小手点一下 之前输入的 int ,就会弹出一个文件,文件中就是int的所有功能。(其他数据类型也同样操作)

1 a1 = 123

    #将字符串转换为数字

1 a = "123"
2 print(type(a),a)
3 
4 b = int(a)
5 print(type(b),b)
6 
7 num = "0011" 
8 v = int(num, base=16)
9 print(v)

输出结果为

<class 'str'> 123
<class 'int'> 123
17 

第八行的语句base=16表示变量num为16进制编码 ,转换为10进制输出结果。

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

1 a = 12
2 r = a.bit_length()
3 print(r)

输出结果为 4

  2、字符串 str

1 s1 = "asdf"

    #首字母大写    

1 test = "aLex"
2 v = test.capitalize()
3 print(v)

输出结果为 Alex

    #所有变小写,casefold更牛一些:很多未知的对相应变小写

1 test = "aLex"
2 v1 = test.casefold()
3 print(v1)
4 v2 = test.lower()
5 print(v2)

输出结果为alex alex

    #设置宽度,并将内容居中

    #20代指总长度

    #*空白未知填充,一个字符,可有可无

1 test = "aLex"
2 v = test.center(20,"*")
3 print(v)

输出结果为 ********aLex********

    #去字符串中寻找,寻找子序列的出现次数

1 test = "aLexalexr"
2 v = test.count('ex')
3 print(v)

输出结果为 2

      #定区间寻找子序列的出现次数

1 test = "aLexalexr"
2 v = test.count('ex',5,6)
3 print(v)

输出结果为 0 ,表示在第五个字符和第六个字符之间没有对应子序列

    #以什么开始,以什么结尾

1 test = "alex"
2 v1 = test.endswith('ex')
3 v2 = test.startswith('ex')
4 print(v1)
5 print(v2)

输出结果为 True  False

    #从开始往后找,找到第一个之后,获取其位置,未找到则为-1

1 test = "alexalex"
2 v = test.find('ex')
3 print(v)

输出结果为 2

    #index找到对应字符的第一个位置并输出,找不到,报错  忽略

1 test = "alexalex"
2 v = test.index('x')
3 print(v)

输出结果为 3

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

1 test = 'i am {name}, age {a}'
2 print(test)
3 v = test.format(name='alex',a=19)
4 print(v)

输出结果为

i am {name}, age {a}
i am alex, age 19

亦可用下面代码代替,实现同样输出结果

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

    #格式化,传入的值{“name”:"alxe","a":19}

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

输出结果为

i am df, age 10
i am alex, age 19

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

1 test = "123"
2 v = test.isalnum()
3 print(v)

输出结果为 True

 

posted @ 2022-04-22 20:12  林长超  阅读(51)  评论(0)    收藏  举报