首页 > 编程语言 > 详细

Elements-of-Python_01

时间:2020-10-28 11:47:38      阅读:27      评论:0      收藏:0      [点我收藏+]

(内容包括输入input,输出print,注释comment,预测类型转换eval,命名与赋值Name & Bestow)

输入Input 和 输出Print

Python中利用input() 和 print() 可以进行在命令行内的输入和输出。

输入input

【从标准输入读入一行文本】input()函数可以从命令框中读到外部输入,以字符串的形式储存。 比如我们想用一个12,需要用a=int(input(">>>")),在命令框中输入12。如果只采用a=input(">>>"),则a="12"字符串类型。(可以用一个内置函数type(a)来查看对象a的类型)
经常用类型转换函数把input()得到的字符串转换为期待的类型,常用到的转换函数包括:
技术分享图片

a = int(input(">>>"))

另外,还有一种读取效率比input()更高的方式,在sys模块中,可以写为sys.stdin.readline(),这种方式不会忽略用户所输入的换行符,因此,实际使用的时候,常常使用下面的语句来去除键盘输入首尾的换行符:

import sys
a = sys.stdin.readline().strip() #可以理解为sys模块中stdin类中的readline()方法,得到的数据用strip()函数来处理,去掉换行符

输出print

【在命令框中打印一些内容】用print()函数可以把内容进行输出。

print(20201028,"Hello Python!\t"+"www","python","org",sep=".")
#可以打印任意格式的变量,变量间可以用逗号或加号间隔,逗号和逗号间可以加间隔符,使用间隔符参数sep=‘ ‘

name,age="Tom",25
print(f"The author‘s name is {name},and the age is {age}. ")
#使用f" " 可以在字符串中加{},括号中加带有变量的算式即可

print("Futhermore, {0} likes to programme, and {0} wants to succeed when {1}. ".format(name,age+1),end="")
#使用"".format()  可以在字符串中加{},括号中可以加序号、名字或什么都不加,后面加序号数对应的算式、名字对应的算式,或按顺序写括号中的算式

print("Cheer up,%s!Grit!"%(name))
#使用占位符进行打印

输出结果如截图所示:
技术分享图片
几点说明:

格式化输出方法详解
[:[[fill] align] [sign] [width] [.precision] [type]]
fill空白处字符空白处你希望填的字符
align对齐方式<    左对齐
>    右对齐
^    居中对齐
=    右对齐,正负号居左
sign符号打印方式加号   正负号都打印
减号   只打印负号,正号不打     
空格   正数空格,负数负号
井号   其他进制打印进制标识
width总宽度一共需要占几个字符
.precision小数部分精确度小数点后保留多少位
type类型d     整数
f      小数
e     科学计数
%     百分数
s      字符串(b二进制,o八进制,x十六进制,c转Unicode)

首先说说填充和对齐:在输出的时候,有时需要固定的格式,如{a:&=+10.2f},表示打印a,用&符号填充空白,符号居左数字居右,正负号都显示,共占10位,小数后精确度是2位,a作为float类型输出。
另外,小数点也算格式化输出中的一位。

1. %型格式化输出

格式是 "....%s...%s..."%(var1,var2,....) 。用%s对字符串中需要填充的地方使用占位符,再用对应个数的变量将占位符以字符串形式填充,变量var1可以是任意类型。也就是说,无论什么类型,你想让它输出为字符串,你就用%s。下表是占位符的含义:

占位符和变量类型的对应关系
占位符描述
%cASCII码
%s 字符串
%d十进制整形
%f十进制小数
%u无符号十进制整形
%o无符号八进制整数
%x & %X无符号十六进制整形
%e & %E科学计数法
%p指针型
%n储存输出字符的数量放进
参数列表的下一变量中

2. format型格式化输出

格式:

  1. "....{}...{}...".format(var1,var2,...) (填坑),挖了几个坑,填几个参数。
  2. "....{0}...{1}...".format(var1,var2,...) (位置标号),前面的坑按数字顺序对应后面的参数。
  3. "....{a}...{b}...".format(a=var1,b=var2,...) (关键字),后面给关键字赋值。

3. f” ”型格式化输出

格式: 直接在f”…{var1}…”的字符串的大括号中,填写变量名称即可。

几点注意:

  1. 输出多个同一类型值时,可以用加号拼接或逗号(分隔符)分隔。
  2. 分隔符号(逗号)默认输出一个空格,如果想输出别的,可以在内容后面跟,sep=” ”,引号中填你想要的分隔符。
  3. print()函数默认换行,因为默认end=”\n”,如果不想换行,可以在内容后面跟,end=” ”,引号中填结尾符。
  4. 双引号单引号都可以,但是首尾引号要对应,且中间不能出现首尾用过的引号,除非中间用转义符\ 。
  5. 使用f‘ ‘或‘ ‘.format()时,如果字符串本身就含有大括号,会被认作挖的坑,这时候,在需要加{}处,加两次即可,变成{{}},字符串就认为用户加的是单{},且不是挖坑,而是需要输出大括号{}。

注释Comment

python有两种方法进行注释,一种是在某句前加#(行注释),一种是对段落的注释,在需要注释的段前后分别加三个引号‘‘‘ (块注释)。另外,讲需要备注的若干行选中后加Ctrl+/也可以进行备注多行。注释后,计算机就读不到被注释的文本了。

#this is the first way to annotation 

‘‘‘ this is a way to annotate
something more than one
line.
‘‘‘ 

备注主要有三个作用:

  1. 对代码加以说明,增加代码可读性(注释不是描述代码,是说功能)
  2. 调试程序,被注释的程序不参与编译(raped code)
  3. 编写函数,类等的说明文档

eval函数

【可以理解为把字符串中的内容自动转为它应该是的数据】利用eval()函数可以轻松的进行计算字符串表达式,类型变换等功能。

import math
print(eval("3+4")) #功能类似字符串表达式计算器
a = eval("[2,4,‘Hello‘,[1,2,3,4],math.pi,‘3+4‘]") #功能类似类型变换
print(type(a),a,sep="\n")
b = eval(input(">>>"))
print(type(b),b,sep="\n")

命令框截图如下:
技术分享图片

一些说明:

  1. eval()中可以填任何简单字符串表达式,但eval只能对最外一层的引号进行转换,之内的表达式进行运算。
  2. eval中的复杂功能字符串不一定能100%保证自动转换或运算正确。

命名和赋值Name & Bestow

命名应做到:字母、数字、下划线的组合,字母开头,不使用关键字,对大小写敏感,望文生义。
几种命名规范:
①Unix_C: 如your_age
②匈牙利命名法:属性(成员范围)_类型+对象描述
③驼峰命名法: 如getElementBody;
赋值号(等于号)左边是被赋值量,右边是值。

a = 10 
a=b=c=10 #链式赋值 
a , b , c =1 , 1.5 , ”Tom” #系列解包赋值

另外,在Pyhton中,不仅可以对属性进行命名,如a=b对于方法也可以进行命名,如c=math.sqrt,这样,c就和math.sqrt等效,print(c(4))会输出2.0。

一些说明:

  1. 根据系列解包赋值,如果要交换变量a和变量b的值,代码是 a,b=b,a
  2. 命名常常会有几个单词(如:time of date),如果变量或方法可以取timeOfDate,如果是类或函数可以取TimeOfDate。 (首字母大写的是类和方法,小写的是函数和类) 也可以用time_of_date和Time_of_date

如果您觉得Tc写得不错或者不好,欢迎批评?或点赞??。

Elements-of-Python_01

原文:https://www.cnblogs.com/Tom2020/p/13889778.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!