Python基础二:pycharm的安装及简单使用,while循环,格式化输出,运算符, 编码的初识,git

Python基础二:

pycharm的安装及简单使用,while循环,格式化输出,运算符, 编码的初识,git
1.pycharm的安装及简单使用
  • Tab / Shift + Tab 缩进、不缩进当前行 (先选中代码)
  • Shift + 滚轮 放大缩小代码
  • Ctrl + ? 注释、解注(先选中代码)
  • Ctrl + d 复制上一行代码
  • Ctrl + z 撤销
  • Ctrl + Shift + F10 RUN
  • Ctrl + 左键---->点击 int,str 等可查看源码
2.while 循环(重点)
  • why:生活中的循环:大气循环, 吃饭,上课,睡觉,日复一日,歌曲列表循序环;程序中:输入用户名密码

  • what:while 无限循环

  • how:

    1. 基本结构:
      while 条件:
          循环体
      
      # 如果条件为真,那么循环体则执行
      # 如果条件为假,那么循环体不执行
    2. 初识循环
      while True:
          print('狼的诱惑')
          print('我们不一样')
          print('月亮之上')
          print('庐州月')
          print('人间')
      
    3. 基本原理:

      • 条件不是时刻判断,程序走到循环体底部后再判断条件是否成立。
    4. 循环如何终止?
      1. 改变条件

        flag = True
        while flag:
            print('狼的诱惑')
            print('我们不一样')
            print('月亮之上')
            flag = False
            print('庐州月')
            print('人间')
        
        # 练习题: 输出1~ 100 所有的数字
        count = 1
        flag = True  # flag 标志位
        while flag:
            print(count)
            count = count + 1
            if count == 101:
                flag = False
        
        count = 1
        while count < 101:
            print(count)
            count = count + 1
        
        # 计算1 + 2 + 3 + ...... 100  的最终结果:
        
        s = 0
        count = 1
        while count < 101:
            s = s + count
            count = count + 1
        print(s)
        

      1. break:直接终止循环

        # break:循环中遇到break直接退出循环。

      while True:
          print('狼的诱惑')
          print('我们不一样')
          print('月亮之上')
          break
          print('庐州月')
          print('人间')
      print(111)
      
      # 1~100 所有的偶数:用%
        ##方法1:
       count = 2
       while True:
           print(count)
           count = count + 2
           if count == 102:
               break
      
        ## 方法2:
       count = 1
       while count < 101:
           if count % 2 == 0:
               print(count)
           count = count + 1
      
        ## 方法3:
      count = 1
      while True:
          if count % 2 == 0:
              print(count)
          count += 1
          if count == 101:
              break
      
      1. 系统命令:调用系统命令:quit(),exit()

      2. continue

        • 退出本次循环,继续下一次循环。continue(终止本次循环,进入下一次循环)
        • continue相当于循环体的底部,执行到continue不再往下执行(无论其下面有多少代码),继续进行下次循环

        # continue : 退出本次循环,继续下一次循环
        flag = True
        while flag:
            print(111)
            print(222)
            flag = False
            continue
            print(333)
        
        #使用while循环打印 1 2 3 4 5 6 8 9 10
        #方法1:
        count = 1
         while count <11:
             print(count)
             count += 1
             if count == 7:
                 count += 1
        #方法2:
         count = 0
         while count < 10:
             count += 1
             if count == 7:
                 continue
             print(count)
        
        #请输出1,2,3,4,5,95,96,97,98,99,100
        count = 0
        while count < 100:
            count += 1
            if count >= 6 and count <= 94:
                continue
            print(count)
        
    5.while else
     #while else:当while循环正常执行完,中间没有被break中止的话,就会执行else后面的语句. while循环如果被break打断,则不执行else语句。
    count = 1
    while count < 5:
        print(count)
        if count == 2:
            break
        count = count + 1
    else:
        print(666)
  • where: 你需要重复之前的动作,输入用户名密码,考虑到while循环。

3.格式化输出(重点)
  • 当你遇到这样的需求:字符串中想让某些位置变成动态可传入的,首先要考虑到格式化输出。 %s

  • 让一个字符串的某些位置变成动态可传入的。

  • (占位符)% + (数据类型)s d i r 【 备注:s即str, d即digit,i即int,r】

  • %s字符串占位符 %d数字占位符

    #要求:用户输入姓名、年龄、工作、爱好 ,然后打印成以下格式
    ------------ info of 太白金星  -----------
     Name  : 太白金星
     Age   : 18
     job   : Teacher
     Hobbie: girl
     ------------- end ----------------------
    
    # 制作一个公共的模板,把要打印的格式先准备好, 由于里面的一些信息是需要用户输入的,你没办法预设知道,因此可以先放置个占位符,再把字符串里的占位符与外部的变量做个映射关系即可。
    
    
    #程序:
     name = input('请输入你的姓名:')
     age = input('请输入你的年龄:')
     job = input('请输入你的工作:')
     hobby = input('请输入你的爱好:')
     msg = '''------------ info of %s  -----------
     Name  : %s
     Age   : %d
     job   : %s
     Hobbie: %s
     ------------- end -----------------''' % (name, name, int(age), job, hobby)
     #  % (name, name, int(age), job, hobby)  %就是把前面的字符串与后面的变量关联起来 
     #input接收的所有输入默认都是字符串格式,所以:str--->int
     print(msg)
    
    
    # 坑:在格式化输出中,% 只想表示一个百分号,而不是作为占位符使用--->格式化输出把所有%当做占位符,要想输出百分号,需输入两个百分号%%
    msg = '我叫%s,今年%s,学习进度1%%' % ('太白金星', 18)
    print(msg)#   我叫太白金星,今年18,学习进度1%
4.运算符
  • 算数运算符: + - * / % ** //
  • 比较运算符: ==, !=, <>,>,<,>=,<=
  • 赋值运算符:=,+=,-=,*=,/=,%=,**=,//=
  • 逻辑运算符:and or not
  • 成员运算符:
#算术运算:
i1 = 2
i2 = 3
print(2 ** 3)
print(10 // 3)
print(10 % 3)

#比较运算
print(3 != 4)

#赋值运算:
count = 1
count = count + 1
count += 1
print(count)
# 逻辑运算
and or not  【重点】

# 情况1:两边都是比较运算
#在没有()的情况下,优先级:not > and > or,同一优先级从左至右依次计算
 print(2 > 1 and 3 < 4 or 4 > 5 and 2 < 1) #True
 print(True or False)  #True

# 情况2:两边都是整数
x or y , x为真,值就是x,x为假,值是y
x and y , x为假,值就是x,x为真,值是y

 print(1 or 2)#1
 print(3 or 2)#3
 print(4 or 2)#4
 print(-1 or 2)#-1
 print(0 or 2)#2
 print(1 and 2)#2


#成员运算  
in  ; not in

判断子元素是否在原字符串(字典,列表,集合)中:
例如:
print('喜欢' in 'dkfljadklf喜欢hfjdkas')#True
print('a' in 'bcvd')  #False
print('y' not in 'ofkjdslaf')  #False
# 面试题:
print(1 and 2 or 3 and 4) #2

# 思考题:
 print(1 > 2 and 3 or 6)  #6
5.编码的初识(重点
  • 不同编码方式占几个字节(重点)
  • 单位换算(重点)

密码本: 二进制数字与 文字之间的对应关系。

  1. ASCII码:只包含:英文字母,数字,特殊字符。(所有ASCII编码的第7位为0,即最高位均为0)

    • 字符对应的ASCII数值:A(65) a(97)
    • 0110 0001 : a
    • 8bit == 1byte
    • 'hello123': 占8个字节( 8byte
    • 'abc' : 占 3个字节
  2. GBK: 英文字母,数字,特殊字符和中文。国标

    GBK是采用单双字节变长编码,英文使用单字节编码,完全兼容ASCII字符编码,中文部分采用双字节编码。

    • 1个英文字符占1个字节 1个中文字符占 2个字节
    • ​ 'ab太白' :6个字节
    • 一个英文字母: 0000 0001 : a 1个英文字符占1个字节
    • 一个中文 : 0000 0001 0100 0001 : 中 1个汉字占2个字节
  3. Unicode: 万国码:把世界上所有的文字都记录到这个密码本。(兼容性高,他与任何的密码本都有映射关系)

    - **1个英文字符占4个字节   1个中文字符占 4个字节**
    - 字符:中文字符和英文字符
    - 浪费空间,浪费资源。
    
        - 起初一个字符用2个字节表示:

​ 0000 0001 0000 0011: a

​ 0000 0001 0100 0001 : 中

     - 后来为了涵盖全部文字:

​ 0000 0001 0000 0011 0000 0001 0000 0011: a 占4个字节

​ 0000 0001 0100 0001 0000 0001 0000 0011 : 中 占 4个字节

  1. UTF-8:最少用8bit即1个字节表示一个字符。ascii码中的内容用1个字节保存、欧洲的字符用2个字节保存,东亚的字符用3个字节保存。
    - 1个英文字符占1个字节 1个欧洲文占 2个字节 1个中文字符占 3个字节
    - 'ab太白' 8个字节

​ 0000 0011: a 1个英文字符占1个字节

​ 0000 0011 0000 0011 1个欧洲字符 占2个字节

​ 0000 0011 0000 0011 0000 0011 中 1个中文字符占3个字节

  • '中国12he' : GBK: 占 8个字节
  • '中国12he' : UTF-8: 占10个字节
    8bit = 1byte
    1024byte = 1KB
    1024KB = 1MB
    1024MB = 1GB
    1024GB = 1TB
  

​ 单位换算:7.6MB ----> 7.6 * 1024 * 1024 * 8bit

6.git :

git 常用命令:
  • 添加文件

    • git add . 添加到缓存
    • git commit -m "文件说明" 添加到本地仓库
    • git push origin master 添加到远程仓库
  • 删除文件

    • git rm "文件名" 删除文件
    • git commit -m "删除文件"
    • git push origin master 远程同步

猜你喜欢

转载自www.cnblogs.com/xiaomage666/p/10805281.html