继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

Python之路(二)Python基础

四季花海
关注TA
已关注
手记 304
粉丝 42
获赞 161

执行

  • Windows

方式一D:\Python\python.exe D:\Python17\DAY01\Helloworld.py方式二D:\Python\python.exe
  • Linux

方式一[root@linux-node1 ~]# /usr/bin/python Helloworld.py方式二[root@linux-node1 ~]# python方式三[root@linux-node1 ~]# vim Helloworld.py#!/usr/bin/python       // 增加头部信息# -*- coding:utf8 -*-   // 解释器编码print('Hello Python!')[root@linux-node1 ~]# chmod +x Helloworld.py        // 增加可执行权限[root@linux-node1 ~]# ./Helloworld.py

编码

  • 字符编码

计算机从本质上来说只认识二进制中的0和1,可以说任何数据在计算机中实际的物理表现形式也就是0和1,所有的信息最终都表示为一个二进制的字符串,每一个二进制位(bit)有0和1两种状态。

  • ASCII

ASCII(American Standard Code for Information Interchange,美国标准信息交换代码)编码规则是由美国定制,一共规定了128(2**8)个字符的编码,例如空格SPACE是32(二进制00100000),大写的字母A是65(二进制01000001)。这128个符号(包括32个不能打印出来的控制符号),只占用了一个字节的后面7位,最前面的一位统一规定为0。

  • GB2312、GBK

虽然计算机是美国人发明的,但是全世界的人都在使用计算机。现在出现了另一个问题:如何让中文被计算机理解?这下麻烦了,中文不像拉丁语系是由固定的字母排列组成的。ASCII 码显然没办法解决这个问题,为了解决这个问题中国国家标准总局1980年发布《信息交换用汉字编码字符集》提出了GB2312编码,用于解决汉字处理的问题。GB2312的出现,基本满足了汉字的计算机处理需要,但对于人名、古汉语等方面出现的罕用字,GB2312不能处理,导致后来出现了GBK编码。

  • Unicode

随着计算机的普及,显然ASCII码无法将世界上的各种文字和符号全部表示,所以诞生了Unicode编码。  
Unicode(统一码、万国码、单一码)是一种在计算机上使用的字符编码。Unicode是为了解决传统的字符编码方案的局限而产生的,它为每种语言中的每个字符设定了统一并且唯一的二进制编码,规定所有的字符和符号最少由16位来表示(2个字节)。

  • UTF-8

由于Unicode收录了更多的字符,可想而知它的解析效率相比ASCII码的速度要大大降低,原因是Unicode通过增加一个高字节对ISO Latin-1字符集进行扩展,当这些高字节位为0时,低字节就是ISO Latin-1字符。对可以用ASCII表示的字符使用Unicode并不高效,因为Unicode比ASCII占用大一倍的空间,而对ASCII来说高字节的0对他毫无用处。为了解决这个问题,就出现了UTF-8编码。UTF-8可以根据不同的符号自动选择编码的长短,例如英文字母可以只用1个字节就够了。

  • 编码小结

  1. 为了处理英文字符,出现了ASCII编码。

  2. 为了处理中文字符,出现了GB2312编码。

  3. 为了处理各国字符,出现了Unicode编码。

  4. 为了提高Unicode存储和传输性能,出现了UTF-8编码。

注释

  • 单行注释

#常被用作单行注释符号,在代码中使用#时它右边的任何数据都会被忽略,当做是注释。

# 如下是单行注释# print('Hello Python!')
  • 多行注释

多行注释是用三引号"""  """包含的。

# 如下是多行注释"""print('Hello Java!')print('Hello PHP!')"""

引号

  • 单引号

a = '谁说我的眼里只有你,让我把你忘记!'print(a)// 单引号字符串
  • 双引号

a = "谁说我的眼里只有你,让我把你忘记!"print(a)// 双引号字符串
  • 三引号

a = '''谁说我的眼里只有你,让我把你忘记!'''print(a)// 三单引号字符串,支持换行符a = """谁说我的眼里只有你,让我把你忘记!"""print(a)// 三双引号字符串,支持换行符

变量

  • 定义

a = '谁说我的眼里只有你,让我把你忘记!'print(a)// 变量名为:a,变量a的值为:'谁说我的眼里只有你,让我把你忘记!'
  • 命名规则

  1. 字母,数字,下划线组成

  2. 不能以数字开头

  3. 不能使用关键字

  4. 变量名见名知义

  • 赋值

name = '林斌'user = name// 变量name,user在内存中指向同一段地址name = '林斌'user = '林斌'// 变量name,user在内存中指向同一段地址,Python的内存优化机制name = '大师兄'print(name)     // 打印大师兄user = nameprint(user)     // 打印大师兄name = '二师兄'print(name)     // 打印二师兄print(user)     // 打印大师兄

输入输出

  • 输入

name = input('请输入用户名:')print(name)import getpasspassword = getpass.getpass('请输入你密码:')print(password)
  • 输出

a = 'Hello Python!'print(a)

条件语句

  • 单分支结构

if 1 == 1:    print('条件正确')if 1 == 1:    print('条件正确')else:    print('条件错误')
  • 多分支结构

name = input('请输入用户名:')if name == 'linbin':    print('超级管理员')elif name == 'LinBin':    print('管理员')elif name == 'LB':    print('普通用户')else:    print('匿名用户')
  • 嵌套结构

name = input('请输入用户名:')if name == 'linbin':    password = input('请输入密码:')    if password == 'axbc1kof':        print('登录成功!')    else:        print('登录失败!')else:    print('你是谁啊?')

循环语句

  • while

在给定的判断条件为True时执行循环体,否则退出循环体。

continue:跳出本次循环,继续下一次循环
break:跳出整个循环

i = 0while i < 11:    print(i)    i += 1
  • for

重复执行语句。

continue:跳出本次循环,继续下一次循环
break:跳出整个循环

a = ['a','b','c','d']for item in a:    print(item)

其它

小试牛刀

打印1,2,3,4,5,6,8,9,10

i = 1while i < 11:    if i == 7:        i += 1        continue    print(i)    i += 1

计算1-100之和

i = 1sum = 0while i < 101:    sum += i    i += 1print(sum)

打印1-100奇数

i = 1while i < 101:    if i % 2 == 1:        print(i)    i += 1

计算1-100奇数之和

i = 1sum = 0while i < 101:    if i % 2 == 1:        sum += i    i += 1print(sum)

打印1-100偶数

i = 1while i < 101:    if i % 2 == 0:        print(i)    i += 1

计算1-100偶数之和

i = 1sum = 0while i < 101:    if i % 2 == 0:        sum += i    i += 1print(sum)

计算1-2+3-4+5......99结果

i = 1sum = 0while i < 100:    if i % 2 == 1:        sum += i    else:        sum -= i    i += 1print(sum)

用户登录(三次机会重试)

count = 0while count < 3:    import getpass    name = input('请输入用户名:')    password = getpass.getpass('请输入密码:')    if name == 'linbin' and password == 'axbc1kof':        print('登录成功!')        break    else:        print('登录失败!')        count += 1

打开App,阅读手记
1人推荐
发表评论
随时随地看视频慕课网APP