Python学习 第二章 基础知识

      要学习很牛B的编程技术之前我们还是得有点基础准备,哈哈,这是肯定的,那么我们现在就开始吧!!!

1.1 变量

       变量是撒子嘛?不好意思啊,我学习下四川话,哈哈,那么什么是变量呢?我翻下书,书里是这样说的:当你把一个值赋给一个名字时,它会储存在内存中,这块内存就称为变量。现在我们来看看一个经典的例子吧,这个你必须要掌握啊。
a = "hello,world!!!"print(a)
执行结果:
hello,world!!!
恭喜你!你已经完成了第一个Python的程序编写了!!!
上面的示例告诉你,首先我们将一个字符串赋值给了一个名字:a(也可以说,把一个名字:a贴在了字符串身上)。
      有变量就会有常量,可是Python却不支持常量,那常量我们怎么表示呢?哈哈哈,这个问题有点神奇,我们这样说吧,如果把一个常量名称写成大写的,且从不去修改赋给它的值,我们这样表示常量。如:P = 3.14(注意数学中的圆周率我们是pi这样标记的)
变量的命名规则:
        1、变量名是字母、数字、下划线的任意组合。
        2、变量名的第一个字符不能为数字。
        3、Python里的关键字,不能用来作为变量名。

1.2 字符

计算机中一般是使用某个数字代表某个字符的:ASCII码 用一个字节,也就是8bytes表示255个字符 对英语国家似乎够了
1980年 GB2312 6763个汉字、682个字符
1995年 GBK1.0 2W+个汉字
2000年 GB18030 2.7W+个汉字 嵌入式产品暂不支持
Unicode 用两个字节(2bytes)即16位表示
utf-8 en:1betys,zh:2betys
注意:Python2默认不支持中文,如要使用中文需要在代码前加上以下代码:

#-*- coding:utf-8 -*-

Python3默认支持utf-8的

1.3 字符串

用引号括起来的数字或者单个字符表示字符串,如:'a','123','你好!!!'。如果你要告诉Python你在创建一个字符串,就要在字符两边加上引号,单引号或双引号无所谓,但必须是成对的。
1.3.1原始字符串
如何用Python把C:\Program Files (x86)\360\360sd打印dayinba在屏幕上呢?
你不会是想这样的打印吧:
print("C:\Program Files (x86)\newsoft\talk")
你会发现显示结果是这样的:
C:\Program Files (x86)
ewsoft alk
这不是你想要的吧,为什么会是这样呢?原来是反斜杠和后面的首字符构成了转义字符\t代表换行,\p代表空格,懂了吧,那么我们要怎样解决这个呢?
我们可以这样干:
print(r"C:\Program Files (x86)\newsoft\talk")
对是这样的,Python中使用原始字符串可以解决这样的问题,原始字符串的使用非常简单,就是在字符串前面加一个英文字母r即可。
注意:无论是否原始字符串都不能以反斜杠作为结尾,反斜杠结尾表示字符串还没有完换行继续的意思。
1.3.2长字符串
本菜鸟今日突然词兴大发,想作词一曲,听好了啊:
破阵子·为陈同甫赋壮词以寄之
醉里挑灯看剑,梦回吹角连营。八百里分麾下炙,五十弦翻塞外声,沙场秋点兵。
马作的卢飞快,弓如霹雳弦惊。了却君王天下事,赢得生前身后名。可怜白发生!
大功告成,给我把它打印出来吧,呵呵,你怎么做呢?
要这样做吗:
print("破阵子·为陈同甫赋壮词以寄之\n
醉里挑灯看剑,梦回吹角连营。八百里分麾下炙,五十弦翻塞外声,沙场秋点兵。
\n马作的卢飞快,弓如霹雳弦惊。了却君王天下事,赢得生前身后名。可怜白发生!")
如果换行非常多呢怎么办?
使用三重引号字符串解决吧,如下:
print("""破阵子·为陈同甫赋壮词以寄之
 
醉里挑灯看剑,梦回吹角连营。八百里分麾下炙,五十弦翻塞外声,沙场秋点兵。
 
马作的卢飞快,弓如霹雳弦惊。了却君王天下事,赢得生前身后名。可怜白发生!""")

1.4 流程判断 if-else
先来说说if-else吧,金角大王说我们来玩个游戏吧,来猜我的年龄,猜对了就停,猜不对就继续,只有三次机会,让写成代码,该咋办呢?妈妈呀!

 

age_of_me = 32
guess_age = int(input("guess_age:"))
if guess_age == age_of_me:
    print("是的,你猜对了!!!")
elif guess_age > age_of_me:
    print("有点大!!!")
else:
    print("你猜的小了!!!")
再来说说条件表达式(三元操作符)
三元操作符的语法为:
a = x 条件 else y
有了三元表达式你就可以用一句话来完成条件判断和赋值操作,我们以前这样写条件判断:
x = 6
y = 11
if x <  y:
    small = x
else:
    small = y
print(small)
有了三元操作符之后,我们就可以这样写:
x = 6
y = 11
small = x if x < y else y               #此处使用了三元操作符
print(small)

1.5 循环

1.5.1 while循环
老师说可以对1.4的程序用While进行修改,所以代码又被变成这样了。

 

age_of_me = 32
count = 0
while True:
    if count == 3:
        print("您的精彩次数已经超过三次,抱歉,此次竞猜结束!!!")
        break
    guess_age = int(input("你猜猜我多少岁呢:"))
    if guess_age == age_of_me:
        print("您猜对了!!!")
        break
    elif guess_age > age_of_me:
        print("您猜的大了!!!")
    else:
        print("您猜的有点小了")
    count +=1
 
       大家有没有发现上面得代码中有一个词break语句,那么break语句的意思什么呢?break语句的意思是终止当前循环,跳出循环体。break语句在上面的代码中的意思是终止当前循环,跳出循环体。
       我们可以对上面语段胆码进行再优化一下,反正已经到这里了。如下:

 

age_of_me = 32
count = 0
while  count < 3:
    guess_age = int(input("你猜猜我多少岁呢:"))
    if guess_age == age_of_me:
        print("您猜对了!!!")
        break
    elif guess_age > age_of_me:
        print("您猜的大了!!!")
    else:
        print("您猜的有点小了")
    count +=1
else:
    print("您竞猜已超过3次,抱歉,本次竞猜结束!!")
如果有人说,这个只能猜测,我猜不准但是我还想猜怎么办呢?我们可以对代码再次修改,如下,三次之后可以询问是否继续,如下:
age_of_me = 32
count = 0
while  count < 3:
    guess_age = int(input("你猜猜我多大呢:"))
    if guess_age == age_of_me:
        print("您猜对了!!!")
        break
    elif guess_age > age_of_me:
        print("您猜的大了!!!")
    else:
        print("您猜的有点小了")
    count +=1
    if count == 3:
        countine_confirm = input("您还想继续试吗?")
        if countine_confirm != 'n':
            count = 0
else:
    print("您竞猜已超过3次,抱歉,本次竞猜结束!!")
 
1.5.2 for循环
for循环其实还有一个小伙伴:range()内建函数。
range([start,] stop[, step = 1])
for a in range(0,100,2):
    print(a,"",end='')
执行结果:
0 2 4 6 8 10 12 14 16 18 20 22 24 26 28 30 32 34 36 38 40 42 44 46 48 50 52 54 56 58 60 62 64 66 68 70 72 74 76 78 80 82 84 86 88 90 92 94 96 98
代码
for a in range(0,100):
    print(a,"",end='')
执行结果如下:
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99
比较上面的两段代码不难发现,range()内建函数,的作用就是提供了一个范围,指定了一个自增步长(默认为1)的循环函数。
如果你还是不理解range()函数的作用,你可以先这样认为:他的作用是生成一个从start参数开始,到stop参数值结束的数序列,常于for循环混迹于各种计数循环之间。
现在我们可以开始使用for循环了,虽然水Python是由C语言写成的,但是for语句已经和C语言中的不太一样了,用for写个九九乘法表吧,经过本莱鸟认真的构思,终于完成了如下代码:
for a in range(0,9) :                                           #range()函数的作用是a从0开始每循环一次自身加1,直到a为9截止
    a = a + 1
    for b in range(0,9):                                        #range()函数的作用是从0开始每循环一次自身加1,直到b为9截止
        b = b + 1
        if a >= b:
            print(a,"*",b,"=",a*b," ",end='')            #输出乘法表,然后输出一个空格
    print("\t")                                                     #a每循环一次输出一次换行
执行结果如下:
1 * 1 = 1
2 * 1 = 2 2 * 2 = 4
3 * 1 = 3 3 * 2 = 6 3 * 3 = 9
4 * 1 = 4 4 * 2 = 8 4 * 3 = 12 4 * 4 = 16
5 * 1 = 5 5 * 2 = 10 5 * 3 = 15 5 * 4 = 20 5 * 5 = 25
6 * 1 = 6 6 * 2 = 12 6 * 3 = 18 6 * 4 = 24 6 * 5 = 30 6 * 6 = 36
7 * 1 = 7 7 * 2 = 14 7 * 3 = 21 7 * 4 = 28 7 * 5 = 35 7 * 6 = 42 7 * 7 = 49
8 * 1 = 8 8 * 2 = 16 8 * 3 = 24 8 * 4 = 32 8 * 5 = 40 8 * 6 = 48 8 * 7 = 56 8 * 8 = 64
9 * 1 = 9 9 * 2 = 18 9 * 3 = 27 9 * 4 = 36 9 * 5 = 45 9 * 6 = 54 9 * 7 = 63 9 * 8 = 72 9 * 9 = 81
 
现在我们学习了for循环,是不是可以用for循环对1.5.1的代码进行一下修改呢?说干就干吧
age_of_me = 32
count = 0
for count in range(3):
    guess_age = int(input("您猜多大呢:"))
    if guess_age == age_of_me:
        print("您猜对了!!!")
        break
    elif guess_age > age_of_me:
        print("您猜的大了!!!")
    else:
        print("您猜的有点小了")
else:
    print("您竞猜已超过3次,抱歉,本次竞猜结束!!")
 
 
以上就是本章的基本内容
 

转载于:https://www.cnblogs.com/dqrs/p/9342623.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值