python1 python的起源,与优缺点。输入与输出和简单计算。

############python
1、python的起源
python的创始人为吉多.范罗苏姆,他在1989年的圣诞节期间决心开发一个新的解释程序,面向对象是非程序员,并且还是开源的,在互联网上开原,全世界的人都可以参与到python这个语言的功能开发上。
2、解释器
计算机不能直接理解机器语言(010101)之外的语言,所以程序员必须把所写的程序语言翻译成机器语言,计算机才能执行程序。将其他语言翻译成机器语言的工具,被称为编译器。
编译器有两种:一种是编译,另一种是解释。因此语言也分为两类,编译语言和解释语言。
编译型语言–编译器–最终可执行文件:同一编译,一次执行。编译器最后生成的可执行文件就只能在这个操作系统上运行,不能跨平台
解释型语言–解释器:读一行翻译一行,翻译一行执行一行。在不同操作系统上安装不同的解释器就可以了。
3、python的特点
python是一种解释型语言,他的跨平台能力强。名且开原,代码像纯英文那样容易理解,适用于短期开发的日常任务。简单、可读型强、开发速度快。python的源代码清晰,像文章一样清晰流畅。明确的告诉人们每一句代码要做的事情。python开发者一般会选择并且只选择一种方法来做一件事。在语法方面选择明确没有或者很少有歧义的语法。
4、为什么选择python
代码的量少,开发的速度块。同样的问题,用不同的语言解决,代码量的差距还是很多的。
python是一个完全面向对象的语言:面向对象是思维方式,也是一门程序设计技术。解决问题时有两种方式:1)、我们自己亲历亲为,一步步解决这个问题。2)、要解决一个问题前先考虑是谁来做,怎么做的,谁的职责,最后把事情做好,当解决问题时就可以找多个不同的对象,各司其职,共同实现最终完成。
python除了这些特定还有一些其他特点,python社区提供了大量的第三方库,不是官方的而是由爱好者开发的(力量有限),较为热门的都在其中。
5、python的优缺点:
优点:简单、易学。免费开源。面向对象,丰富强大的库。可扩展性强。
缺点:运行速度慢、国内市场较小、中文资料匮乏
####################1、第一个python程序

[kiosk@foundation38 dir1]$ vim first.py
# _*_coding:utf-8_*_
# python2.x:默认使用ASCII编码
# python3.x:默认使用UTF-8编码
print('hello world')
print('你好 hello world')
[kiosk@foundation38 dir1]$ /usr/local/python3/bin/python3 first.py 
hello world
你好 hello world

python1 python的起源,与优缺点。输入与输出和简单计算。_第1张图片
##############2、python中的变量
例子:
变量就是对内存地址空间的一个引用

>>> a = 1
>>> a
1
>>> 
>>>  a = 3
>>> a
3
>>> 

如上面,我们有了一个量是1,它存在在内存中的第一个空间中,那么现在我们给它的所在空间一个名称为a,在之后要找到这个空间的数据时只要找到这个空间的名字a即可。同时又由于,内存空间的数据时可以改变的我们将另一个值给与这个地址时,原来的这个地址中的数据将会更改。
在程序中我们要在开头加上说明,方法:

[kiosk@foundation38 dir1]$ vim python中的变量.py 
  #变量时对内存地址空间的一个引用
a = 1
print(a)
"""
print('hello python')
"""
[kiosk@foundation38 dir1]$ /usr/local/python3/bin/python3 python中的变量.py 
1
我们可以看出执行程序后中间连起来的不显示

python1 python的起源,与优缺点。输入与输出和简单计算。_第2张图片
python1 python的起源,与优缺点。输入与输出和简单计算。_第3张图片
#########python中的数据类型

>>> a = 1                                                     ###给与一个变量
>>> print(a)
1
>>> type(a)                                                    ##查看空间数据的类型
                                                 ##整形
>>> b = 1.4                                               ###给与空间b一个值
>>> type(b)                                                   ##产看b空间类型
                                              ##浮典型
>>> c = 'westos'                                              ##给c一串字符
>>> type(c) 
                                                 ##c是字符串
>>> c = 'what's'                                               ##当字符串中有单引号时不能在用但引号围住它        
  File "", line 1
    c = 'what's'
              ^
SyntaxError: invalid syntax
>>> c = "what's"                                                   ##换双引号
>>> print(c)
what's
>>> c = 'what\'s'                                                ##或者这样
>>> type(c)

##bool,只要里面有数据就返回正确的
>>> a = 1                                                           ##给a 一个值1                      
>>> bool(a)                                                      ##bool查看a空间
True                                                              ##返回正确
>>> bool(1)                                                     ##直接用bool看1
True                                                              ##正确
>>> bool(0)                                                             ##看0
False                                                            ##错误   
>>> c = ''                                                       ##给c一个空的字符串
>>> bool(c)                                                      ##bool看
False                                                                 ##时错误的
>>> c = ' '                                                         ##字符串中加空格
>>> bool(c)                                                       ##bool看
True                                                                  ##有空格,bool显示为真
>>> bool('')                                                     ##直接看字符为空的
False                                                            ##错误
>>> bool(' ')                                                      ##看字符中有空格的
True                                               ##为真

python1 python的起源,与优缺点。输入与输出和简单计算。_第4张图片
################这里我们对上面一个总结,就是字符的类型是根据你所给与的数据类型自动给与的,我们有type可以看到,字符串的输入要加“’’”单引号,如果字符串其中有但引号,我们要用将字符串外围的单引号转换为双引号,或者在其中加入转换符号“\”。bool可以看一个地方是否有数据。
##################数据的转换
在上面我们可以进行数据类型的查看,以及查看数据是否存在,那么怎么来改变数据的类型

>>> a = 1                                            ##给内存中一个数据和所在地点名称
>>> type(a)                                          ##给的1,默认是整形,我们用type查看

>>> float(a)                                         ###将a的这块地点改为浮点型
1.0                                               ##更改成功
>>> type(a)                                                  ##我们在查看a这块内存地址
                                                ##但仍然是整形,a is  not change
>>> b = float(a)                                             ##我们将a数据类型改为浮点型并且将其放到b这个位置
>>> type(b)                                                   ##我们查看b的类型为浮点型

>>> b
1.0
>>> c = 'redhat'                                                   ##we give c a char string
>>> int(c)                                                 ##we change char string to char int,that's not persive
Traceback (most recent call last):
  File "", line 1, in 
ValueError: invalid literal for int() with base 10: 'redhat'
>>> c = '123'                                           ##but if we give a num string
>>> type(c)                                                 ##look the type
                                              
>>> c
'123'                                                        ##num string
>>> int

>>> int(c)                                               ##we can change type int                             
123
>>> type(c)                                       ##we not give int(c) a storage pot so c is his forehead type

>>> d = int(c)                                       ##we give c change after to d
>>> d                                                    ##d is num int
123
>>> type(d)                                                ##look d's type int

>>> 

#########我们在这里可一看到数据类型的改变直接指定就可以,但是指定后,一定要给他储存的空间。被指定的空间数据类型是不变的,指定完后保存到另一个地方。
python1 python的起源,与优缺点。输入与输出和简单计算。_第5张图片
##删除变量
python1 python的起源,与优缺点。输入与输出和简单计算。_第6张图片

a                                            ##删除变量用 del
1
del a       
a
Traceback (most recent call last):
  File "", line 1, in 
NameError: name 'a' is not defined
picture del
#######################################在我们完成变量数据类型的查看、改变、删除,下来是变量的运算
[kiosk@foundation38 bin]$ python                                #################python2
Python 2.7.5 (default, Aug  2 2016, 04:20:16) 
[GCC 4.8.5 20150623 (Red Hat 4.8.5-4)] on linux2
Type "help", "copyright", "credits" or "license" for more information.5/2                                                                          #5/2的值为
2
100/300
0
5.0/2                                                                          ##float浮点型相除
2.5
100/300.0                                                                
0.3333333333333333[kiosk@foundation38 bin]$ ./python3                               ###python3版本中
Python 3.6.4 (default, Aug 26 2019, 22:05:47) 
[GCC 4.8.2 20140120 (Red Hat 4.8.2-16)] on linux
Type "help", "copyright", "credits" or "license" for more information.5/2                                                                   ##除法自动转换相应的类型
2.5
100/300
0.3333333333333333
5%2                                                                   ##取余数      
1
100%300
100
10%2
0
1%2
1
##从上面的取余数我们可以看到只除到个位###############取整和自加5//2                                   ##除数取整//
2
34//3 
11
a = 1                  
a
1
a = a+1                                     ##自加后付给自己
a
2
a
2
a += 1                                   ##另一种表达方法
a
3##############python的输入inputa = input('num')                                 ##我们表示一个输入
num1                                                     ##输入了1
print(a)                                             ##输出a我们可以看到我门刚才的输入
1
type(a)                                               ##类型
                                              ##是字符串的
a = int(a)                                             ##如果我们要用数字的,则指定字符类型
print(a)
1
type(a)

input ('name:')                                       ##输入字符串
name:westos
'westos'
字符的输入,要记得,所有的输入都是字符串的类型,在写输入时,最好给输入一个内存地址。
##################字符的输出
a = 'westos'                ##给a一个字符串
b = 12                        ##给b一个数字int的
type(a)                      ##分别查看他们的数据类型

type(b)

print('%s' %a)                        ##用print输出%s,可以输出字符串型的
westos
print('%d' %a)                         ##%d,不能输出字符串
Traceback (most recent call last):
  File "", line 1, in 
TypeError: %d format: a number is required, not str           ##这个报错也在说明%d输出的是数字
print('%d' %b)                                       ##b时int型,%d输出int型
12a = 12                                         ##给a给值12
print('%d' %a)                                           ##用%d显示int型,不显示小数
12
print('%f' %a)                                           ##%f是float型显示小数
12.000000
print('%.3f' %a)                                           ##在%f中控制小数的位数
12.000
a = 3                                           ##给a一个值
print('%d' %a)
3                                                   
print('%.4d' %a)                                ##在d之前加“.4”可以看到点之前一共有4位
0003
a =100                                        ##给a值100
print('%.4d' %a)                                ##输出点“.”之前还是4位
0100a = 0.3                                    ##给a一个float数
print('%f' %a)                                   ##用%f输出
0.300000
print('%.2f' %a)                                    ##控制其后位数
0.30
print('%.2f%%' %a)                                       ##给%f后面加‘%%’两个
0.30%                                                           ##输出少100
print('%.2f%%' %(a*100))                                  ##给a乘上100
30.00%                                                      ##得到百分数

###############测试题输入学生姓名,依次输入语文、数学、英语的成绩,计算平均成绩、总成绩、和语文成绩在总成绩中的占比。
代码如下:

[kiosk@foundation38 dir1]$ vim test1.py
name = input('name:')
yuwen = input('语文:')
shuxue = input('数学:')
yingyu = input('英语:')
yuwen = float(yuwen)
shuxue = float(shuxue)
yingyu = float(yingyu)
num = (yuwen+shuxue+yingyu)
average = num/3
print('zongshu:%f' %num)
print('piingjunchengji%.1f:' %average)
averageyuwen = yuwen/num
print('averageyuwen:%.2f%%'  %(averageyuwen*100))                                                            
[kiosk@foundation38 dir1]$ /usr/local/python3/bin/python3 test1.py                 ##运行成功
name:tom
语文:12
数学:12
英语:12
zongshu:36.000000
piingjunchengji12.0:
averageyuwen:33.33%


##############################if 语句,判断作用

age = 20                                  
if age > 18 :                      ##判断是否大于18
    print('good')                           ##大于输出good
else:                                        ##否则输出sorry
    print('sorry~~')                                                                       
~                          
score = 79
if 90 < score <=100:                       ##判断score所在区间
    print('A')
elif 80 < score <= 90:                       ##继续判断
    print('b')
else:                                     ##其他的情况
    print('c')value = input('Value:')                     ##########三种输入,判断是否为空
 bool = bool(value)                         #####前边的bool值判断输入是否有,有输出正确,没有输出错误
 print(bool)
if value == '':                                  ##if语句的‘==’等于号,来判断输入是否为空
    print('input something')
 if not value:                                  ##if后加not显示没有数据。来判断条件是否成立
    print('input value')

and
1 and 2
两个条件同时满足 就返回True
只要有一个条件不满足,就返回False
or
1 or 2
两个条件只要满足一个 就返回True
两个条件都不满足,就返回False
python1 python的起源,与优缺点。输入与输出和简单计算。_第7张图片

要求
用户输入年风判断是否是闰年
–年可以被4整除但是不能被100整除或者年能被400整除。就是润年

year = input('year:')                                   ##输入
year = int(year)                                         ##转换数据类型
if year % 4 == 0 and year % 100 != 0:                    ##判断是否满足条件
     print('runnian')
elif year % 400 == 0:                                   ##查看是否满足条件
     print('runnian')
else:                                                    ##都不满足时
     print('not runnian')##随机数有电脑自带的随机数包,以出拳位类
import random                            ##输出有随机的程序库
player = input('num:')                   ##输入
player = int(player)                       ##转换类型
a = random.randint(1, 999)                   ##在那个范围随机
computer = a                                   ##将其给电脑
print('computer:%d' % computer)                 ##输出随机数
if computer == player:                        ##判断随机的与输入的大小相等
    print('all win')                                     
elif computer > player:                      ##一个较大
    print('computer win')
else:                                           ##其他情况
    print('player win')####################forrange(6)                            ##range的用法
[0, 1, 2, 3, 4, 5]
range(0,4)
[0, 1, 2, 3]
range(3,7)
[3, 4, 5, 6]
range(1,6,2)
[1, 3, 5]sum = 0                                   ##1-100的加法
for i in range(1,101):
    sum = sum+i   #sum +=i
print(sum)
sum = 0
for i in range(1,101,2):                     ##1-100奇数的加法
    sum = sum+i   #sum +=i
print(sum)sum = 0
for i in range(2,101,1):                   ##1-100偶数的加法
    sum = sum+i   #sum +=i
print(sum)

###########for循环的题目
用户登陆程序
1.输入用户名和密码
2.判断用户名和密码是否正确(‘name==root’,'passwd=‘westos’)
3.为了防止暴力破解,登陆次数仅有三次,如果超过三次机会,报错

for i in range(0, 3):                                ##范围 0,1,2
    name = input('name:')                               ##两个输入
    passwd = input('password:')
    if name == 'root' and passwd == 'passwd':            ##if判断是否一致
        print('please in')                               ##一致就退出本次循环
        break
    else:                                               ##不一致的情况
        print('that'srong')
        a = 2 - i                                       ##用总数减去i当为0时自动退出
        print('only have %d times,' % a)

python1 python的起源,与优缺点。输入与输出和简单计算。_第8张图片

你可能感兴趣的:(python1 python的起源,与优缺点。输入与输出和简单计算。)