博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
一个“MacBook”新手的Python“笨办法”自学之旅 #第六章:常用的简易Python命令、符号、代码、格式化字符串...
阅读量:7118 次
发布时间:2019-06-28

本文共 8280 字,大约阅读时间需要 27 分钟。

第六章:常用的简易Python命令、符号、代码、字符串

   《“笨办法”学Python》这本书中,确实用了较多篇幅来介绍Python的一些常用简单的命令、符号、代码和字符串等,对于像我这样的自学新手,真的是非常棒,因为它们可以帮我建立接着学下去的信心和兴趣。但我在这个系列的博客当中,不打算写的这么精细,首先因为这不符合我写博的初衷和习惯,其次因为我不打算靠这写书来挣钱,最后因为我确实没有那个实力去挖掘简单东西中更深奥复杂的应用。所以,我写的这个博客,只适合像我这样的自学新手,如果想要成为大神,还是需要进行专业系统的学习!

                                                                                      

                                                                            话不多说,我们开始吧!

 

------------------------------------------------------------如何开始?---------------------------------------------------------

------------------------------------------------------------如何开始?---------------------------------------------------------

------------------------------------------------------------如何开始?---------------------------------------------------------

 

 

   我本打算按自己的想法,以总结性的形式来写这个博客,但是我发现那样会很乱很乱,倒不如借用Zed的《“笨办法”学Python》形式,以习题为大纲,中间穿插重要的知识点。这本书在网上能找得到网页版的,我本人是买的纸质版的书籍。所以我打算,尽量不将大篇幅的脚本代码写如博客,而是将更多的精力,用于总结和记忆以前学习和摸索出来的知识。这对于我来说,更是一个学习的过程,如果给大家带来了不便,十分抱歉!

   在这一章节中,我会写较多的习题,因为它们都比较简单,相信大家很快就能学会!

 

 

-------------------------------------<习题1:第一个程序>-------------------------------------------

   习题1,确实是没有什么特别的地方,主要是让我们在了解一下Python2的print输出命令同时,学会用终端来“运行”python脚本的方法。

   1, print “需要打印的字符串”  可以输出我们想要打印的字符串;

   2,第一行:# -*- coding: utf-8 -*- 的作用是,可以让脚本代码里面的中文字,在终端中打印出来,否则会出现关于ASCII编码的报错;

   3,运行Python脚本的办法:在终端中进入脚本文件(ex1.py)所在的目录; 键入python ex1.py;回车即可

 

   注意:我没想到博客园的博客编辑页面插入代码这么容易,所以在后续的每个习题最下方会插入我自己键入的代码。如果是我自己学的小代码或游戏,也会在该习题的博客编写当中插入。大家只需要点击 “View Code”就行。

   ex1.py的代码如下:

 

1 # -*- coding: utf-8 -*-2 print "hello world!"3 print "hello again"4 print "I like typing this."5 print "This is fun."6 print 'Yay! Printing.'7 print "I'd much rather you 'not'."8 print 'I "said"do not touch this.'9 print "您好!"
ex1.py

 

终端运行的结果如下:(在之后的终端运行结果,这一次我用复制的形式,是想要在某些行后面注释,在接下来的终端运行结果,我直接就用截屏的方式了)

bogon:~ neymagico$ cd temp/ex   #在终端中进入脚本文件(ex1.py)所在的目录;

bogon:ex neymagico$ python ex1.py  #键入python ex1.py,并回车

hello world!

hello again

I like typing this.

This is fun.

Yay! Printing.

I'd much rather you 'not'.

I "said"do not touch this.

您好

 

求助!求助!求助!求助!本人也有一个迷惑,关于 # -*- coding: utf-8 -*-的。在后续的代码编写中,我用到了自己学的法语,含有一些特殊字符,例如é, è, ê等等,不知道应该在脚本首行键入什么样的代码可以实现,本人在网上搜过一段时间,但是没有结果,期待哪位大神给予解答,Merci beaucoup!(法语版谢谢!)

 

 

------------------------------------<习题2:注释和#号>-------------------------------------------

 

 

   这一个习题特别简单,只是介绍注释和#号。虽然简单,但它的作用非常之大,评价一个码农的水平高低,这也是一个非常重要的标准。

   首先介绍解释符合#的工作原理:在python的脚本代码中,#后方的代码都被python忽略和禁用,只能在阅读脚本源代码时能看见注释符合#后方的代码。根据它的工作原理,可以演变出很多作用:

   1,可以在脚本中,用注释符号#来解释自己写这段代码时想法或运行原理,防止他人和自己不懂!没错,自己将来也可能会忘记自己写的代码是什么意思!

   2,我们可以用#来帮我们暂时禁用一些代码,待想用时,删除# 即可;

   3,注意,用双引号""括住的#不是注释符号,而是字符串的一部分

   ex2.py代码如下:

1 # A comment, this is so you can read your program later.2 # Anything afer the # is ignored by python.3 4 print "I could have coded like this." # and the comment afer is ignored5 6 # You can also use a comment to "disable" or comment out a piece of code:7 # print "This won't run."8 9 print "This will run."
ex2.py

   终端运行结果如下:

   

 

 

------------------------------------<习题3:数字和数学计算>---------------------------------------

 

   这一个习题要讲的东西不是特别多,就是简单的数学计算,不过有几点是需要注意的:

   1,%不是百分号,而是求余符号:例如python里的 100 % 16结果为4。因为100除以16的余数为4;

   2,浮点数(小数)的运算结果和整数的运算结果可能不同,因为python会把小数部分丢弃,参考下方代码的最后两行,其运行结果不同;

   3,运算不仅仅是加减乘除,还包括:>, <, =, >=,<=,

 

   ex3.py代码如下:

1 # -*-coding:utf-8-*- 2 # 告诉这个程序是在数鸡的个数 3 print "I will now count my chickens:" 4 # 母鸡的个数是 25加上30除以6 5 print "Hens", 25+30/6 6 # 公鸡的个数是100减去25乘3的积再除以4求余的结果 7 print "Roosters", 100-25 * 3 % 4 8 # 开始数鸡蛋的个数 9 print "Now I will count the eggs:"10 # 计算3+2+1-5+4/2的余-1/4+611 print 3 + 2 + 1 - 5 + 4 % 2 - 1 / 4 + 612 # 询问3+2小于5-7是否正确13 print "Is it true that  3 + 2 < 5 - 7?"14 # 计算3+2<5-7的结果,结果是False15 print 3 + 2 < 5 - 716 # 询问3+2等于多少,并计算3+2的结果17 print "What is 3 + 2?", 3 + 218 # 询问5-7等于多少,并计算5-7的结果19 print "What is 5 - 7?", 5 - 720 # 由前两个命令行得知,为什么3+2<5-7是错误的21 print "Oh, that's is why it's False."22 # 再多做一点怎么样?23 print "How about some more."24 # 是大于?并计算5>-2的结果,结果为true25 print "Is it greater?", 5 > -226 # 是大于等于?并计算5>=-2的结果,结果为true27 print "Is it greater or equal?", 5 >= -228 # 是小于等于?并计算5<=2的结果,结果为False29 print "Is it less or equal?", 5 <= -230 31 print 7.0 / 4.0 - 032 print 7 / 4 - 0
ex3.py

   终端运行结果如下:

   

 

 

 

------------------------------------<习题4:变量和命名>---------------------------------------

 

   这一个习题会介绍一个非常重要的名称和一个非常重要的概念:

   名词:变量variable:该如何解释呢?你想要测试每天的气温,将气温设为变量T,那这个变量T会跟一些外界因素有关,例如季节、时间、地点、海拔等;Python里面的变量,可以是一个确切的数值、字符、列表、字典等等;

   概念:定义变量:Python里面的变量必须要被定义,否则没有意义,会报错。定义的方式是 T = 100 ℃。当然了,也会有其它情况的变量,不需要这样定义,是在定义函数时默认被定义了,暂时想不起实例,后续想起来会在该处更新(想起来了:例如在while循环和for循环语句当中,变量是默认已经被定义的了,每循环一次,变量被重新定义一次)注意:不能用数字1、2、3、4等来定义变量,变量名必须要以字母开头,例如a1。

 

   变量的简单输出方式,可参考下方的代码,直接可以用print T,不需要用双引号。

   ex4.py代码如下:

1 #-*-coding:utf-8-*- 2 cars=100 #总共有100辆车 3 space_in_a_car=4.0 #一辆车共4个座位 4 drivers=30 #共有30位司机 5 passengers=90 #共有90位乘客 6 cars_not_driven = cars-drivers #没有开的车的数量等于车的总量减去司机的数量 7 cars_driven=drivers #开走的车的数量等于司机的数量 8 carpool_capacity=cars_driven*space_in_a_car #座位的数量等于可开走车的数量乘以每辆车的座位数 9 average_passengers_per_car = passengers / cars_driven #每辆车平均乘客的数量等于乘客的总数量除以被开车的数量10 11 12 print "there are", cars, "cars available."13 print "there are only", drivers, "drivers availabe."14 print "there will be", cars_not_driven, "empty cars today."15 print "we can transport", carpool_capacity, "people today."16 print "we have", passengers, "passengers to carpool today."17 print "we need to put about", average_passengers_per_car, "passengers in each car."
ex4.py

   终端运行结果如下:

   

 

----------------------------------<习题5:变量和格式化字符串>--------------------------------------

   这一习题,主要是介绍格式化字符串和变量结合起来的运用,首先介绍一下格式化字符串:

   格式化字符串:通过用转换说明符,把已经定义好的变量格式更改一下,其运用方法参考ex5.py

   ex5.py代码如下:

1 #-*-coding:utf-8-*- 2 my_name = 'Zed A. Shaw' 3 my_age = 34 # not a lie 4 my_height = 74 # inches 5 my_weight = 180 # lbs 6 my_eyes = 'Blue' 7 my_teeth = 'White' 8 my_hair = 'Brown' 9 10 print "Let's talk about %s." % my_name11 print "He's %d inches tall." % my_height12 print "He's %d pounds heavy." % my_weight13 print "Actually that's not too heavy."14 print "He's got %s eyes and %s hair." % (my_eyes, my_hair)15 print "His teeth are usually %s depending on the coffee." % my_teeth16 17 # this line is tricky, try to get it exactly right18 print "If I add %d, %d, and %d I get %d." % (my_age, my_height, my_weight, my_age + my_height + my_weight)
ex5.py

   终端运行结果如下:

   

 

   除了ex5.py中的转换说明符,还有其它的,详见ex5_1..py。

   ex5_1.py代码如下:

1 # -*- coding:utf-8 -*- 2 sum = -28.91234567 3  4 print "1,转换为带符号的十进制式的整数" 5 print "sum is: %07.6d" %sum #此处的‘0’表示 不补充空格,而是补充0;‘7’表示最小宽度为7,负号占用一个宽带;‘6’表示浮点数的小数点后的位数 6 print "sum is: %+7.6d" %sum #此处的‘+’表示书中总要带着符号(+/-);‘7’表示最小宽度为7,负号占用一个宽带;‘6’表示浮点数的小数点后的位数 7 print "sum is: %-7.3d" %sum #此处的‘-’表示制定左对齐;‘7’表示最小宽度为7,负号占用一个宽带;‘3’表示浮点数的小数点后的位数 8 print "sum is: %7.3d" %sum # 没有‘-’,最小宽度为7,所以输出的结果不是左对齐,而是用空格补充空位 9 10 print "2,转换为带符号的十进制式的整数"11 print "sum is: %07.6i" %sum12 print "sum is: %+7.6i" %sum13 print "sum is: %-7.6i" %sum14 15 print "3,转换为带符号的八进制式的整数"16 print "sum is: %07.6o" %sum17 print "sum is: %+7.6o" %sum18 print "sum is: %-7.6o" %sum19 20 print "4,转换为带符号的十六进制式的整数"21 print "sum is: %07.6x" %sum22 print "sum is: %+7.6x" %sum23 print "sum is: %-7.6x" %sum24 25 print "5,转换为带符号的十六进制式的整数"26 print "sum is: %07.6X" %sum27 print "sum is: %+7.6X" %sum28 print "sum is: %-7.6X" %sum29 30 print "6,转换为科学计数法表示的浮点数"31 print "sum is: %07.6e" %sum32 print "sum is: %+7.6e" %sum33 print "sum is: %-7.6e" %sum34 35 print "7,转换为科学计数法表示的浮点数"36 print "sum is: %07.6E" %sum37 print "sum is: %+7.6E" %sum38 print "sum is: %-7.6E" %sum39 40 print "8,转换为十进制的浮点数"41 print "sum is: %07.6f" %sum42 print "sum is: %+7.6f" %sum43 print "sum is: %-7.6f" %sum44 45 print "9,转换为十进制的浮点数"46 print "sum is: %07.6F" %sum47 print "sum is: %+7.6F" %sum48 print "sum is: %-7.6F" %sum49 50 print "10,智能选择使用e或者f格式"51 print "sum is: %07.6g" %sum52 print "sum is: %+7.6g" %sum53 print "sum is: %-7.6g" %sum54 55 print "11,智能选择使用E或者F格式"56 print "sum is: %07.6G" %sum57 print "sum is: %+7.6G" %sum58 print "sum is: %-7.6G" %sum59 60 name1 = 10061 name2 = "a"62 print "转换为单字符(只接受整数或单字符字符串)" #没搞明白是什么意思,该处会报错63 print "name1 is: %c" %name164 print "name2 is: %c" %name265 66 name3 = "messi"67 print "使用repr()将变量或者表达式转化为字符串"68 print "name3 is: %r" %name369 70 71 name4 = "neymagico"72 73 print "使用str()将变量或者表达式转化为字符串"74 print "name4 is: %s" %name4
ex5_1.py

 

 终端运行结果如下:

      

 

   求助!求助!求助!求助!本人确实是不知道下面三个转换符该如何使用,求前辈们帮忙!

   1,%C:转换为单字符(只接受整数或单字符字符串)

   

 

   PS:将字符串转换成整数的方式是 :int("str")

 

 

   这一章暂时写到着吧,篇幅够长了!

 

 

   *** 第七章预告:字符串、文本、各种打印、转义序列、手动输入raw_input()

 

转载于:https://www.cnblogs.com/la-route-d-ingenieur/p/11027711.html

你可能感兴趣的文章
HTTP的长连接和短连接
查看>>
ConcurrentHashMap并不是绝对线程安全的
查看>>
Oracle Instance
查看>>
使用网络监视器(IRSI)捕捉和分析协议数据包
查看>>
【机房重构】总结
查看>>
Android从无知到有知——NO.6
查看>>
自己写的php curl库实现整站克隆
查看>>
Combination Sum III -- leetcode
查看>>
机器学习算法中的过拟合与欠拟合(转载)
查看>>
机器学习算法实践:决策树 (Decision Tree)(转载)
查看>>
slack 团队协作平台
查看>>
【C#】:浅谈反射机制 【转】
查看>>
【iCore4 双核心板_FPGA】例程五:基础逻辑门实验——逻辑门使用
查看>>
使用Nmon监控Linux的系统性能
查看>>
React-Native 之 GD (十三)数据持久化(realm) 及 公共Cell
查看>>
flask及扩展源码解读
查看>>
通俗易懂详解Java代理及代码实战
查看>>
需求工程的基本过程
查看>>
Android 版本对于 API
查看>>
Hadoop,MapReduce
查看>>