Python语言系列-01-入门





python的出生与应用

#!/usr/bin/env python3
# author:Alnk(李成果)

"""
1,python的出生与应用
python的创始人为吉多·范罗苏姆(Guido van Rossum)。
1989年的圣诞节期间,吉多·范罗苏姆(中文名字:龟叔)为了在阿姆斯特丹打发时间,决心开发一个新的脚本解释程序,
作为ABC语言的一种继承

2,python的历史
    python2x:
        源码冗余,源码重复,源码不规范。
    python3x:
        源码清晰优美简单。

3,python的编码语言分类
    print('hello ') ----> 字节码 ---> 00010101
    解释型:
        代码逐行的解释(字节码转化成010101),并执行。

        优点:
            开发效率高,可以跨平台。
        
        缺点:
            执行效率慢。
        代表语言:python,php。

    编译型:
        将代码一次性全部编译成(字节码)二进制,在执行。
        缺点:开发效率低,不能跨平台。
        优点:执行效率相对高。
        代码语言:c。

4,python的优缺点
    优点:
        1, 开发效率高,模块很多,避免重复造轮子。
        2, 高级语言,不用考虑底层的细节。
        3, 可嵌入性,python代码可嵌入C语言中。
        4, 可拓展性,可嵌入c语言的代码。
        5, 可移植性。
    缺点:
        1, 执行效率相对低。
        2, 代码不能加密。
        3, 不能利用多线程。

5,python的种类
    Cpython: 官方推荐。
    Jpython:将python代码可以解释成Java能识别的字节码,然后执行。
    Ironpython: 将python代码可以解释成.net识别的字节码,然后执行。
    PyPy , Ipython等等。
"""




运行第一个Python代码

#!/usr/bin/env python3
#author:Alnk(李成果)

"""
终端:cmd: python 文件路径 回车
	python2x:编码默认是ascii:只包含数字,字母特殊字符。
			 文件的首行:# -*- encoding: utf-8 -*-
	python3x: 编码是utf-8.
"""

print('Hello World')
print('Hello 中国')




变量和常量

#!/usr/bin/env python3
#author:Alnk(李成果)

# 变量:将程序运行的中间结果暂存起来,以遍后续程序调用
# 变量命名规则:
#     1,变量名必须由数字 字母 下划线 任意组合
#     2,变量名不能是数字开头
#     3,变量名不能是Python中的关键字
#         ['and', 'as', 'assert', 'break', 'class', 'continue', 'def',
#         'del', 'elif', 'else', 'except', 'exec', 'finally',
#         'for', 'from', 'global', 'if', 'import', 'in', 'is',
#         'lambda', 'not', 'or', 'pass', 'print', 'raise',
#         'return', 'try', 'while', 'with', 'yield']
#     4,变量名不能使用中文
#     5,变量名要具有可描述性
#         name = 'alnk'
#         age = 18
#     6,变量名不能过长。
#     7,变量名的推荐:
#         驼峰体: AgeOfOldboy = 47
#         下划线: age_of_oldboy = 47   建议使用这种
age1 = 12
age2 = age1
age3 = age2
age2 = 36
print(age1,age2,age3) # 12 36 12


# 常量 一直不变的量
# 命名规则:全部大写的变量 设置为常量
# 并且放在文件的最上面,设置一些不想让别人改变的变量
BIRTH_OF_CHINA = 1949
BIRTH_OF_CHINA = 1980 # 在python中,常量要更改也不会报错,但是不建议这么做
print(BIRTH_OF_CHINA) # 1980




注释

#!/usr/bin/env python3
#author:Alnk(李成果)

# 注释
#   解释说明。
#   单行注释:#
#   多行注释: """被注释内容""" '''被注释内容'''
#
#   文件说明,函数,类,等等。
#   晦涩难懂的代码写注释。
#   帮助别人理解你的代码,或者帮助你阅读别人的代码。




python基础数据类型

int整型

#!/usr/bin/env python3
#author:Alnk(李成果)

"""
int :
    整型
    1 100 ,-98 ....
    在32位机器上,整数的位数为32位,取值范围为-2**31~2**31-1,即-2147483648~2147483647
    在64位系统上,整数的位数为64位,取值范围为-2**63~2**63-1,即-9223372036854775808~9223372036854775807
"""

i1 = 100
i2 = 20
print(i1 + i2)



str字符串

#!/usr/bin/env python3
#author:Alnk(李成果)

# str
# python中凡是用引号引起来的的内容就是字符串。
# ' '  " "  """ """   ''' '''
s1 = "tom"
s2 = 'tom'
s3 = 'I\'m tom, my age is 18'
s4 = "I'm tom, my age is 18"
print(s1, s2, s3, s4)

# ''' ''' """ """ 换行的字符串需要三引号
msg = '''
今天我想写首小诗,
歌颂我的同桌,
你看他那乌黑的短发,
好像一只炸毛鸡。
'''
print(msg)

# 字符串 可以相加,可以与数字相乘
s1 = 'jerry'
s2 = 'sb'
s3 = s1 + s2
print(s3)

s4 = '坚强'
print(s4 * 8)


bool值

#!/usr/bin/env python3
#author:Alnk(李成果)

# bool
# True False
# 用于不等式或者条件的判断。
print(1 > 2)  # False
print(3 > 2)  # True
s5 = 'True'
b1 = True
print(s5, b1)  # True True
print(s5, type(s5))  # True <class 'str'>
print(b1, type(b1))  # True <class 'bool'>




用户交互input

#!/usr/bin/env python3
#author:Alnk(李成果)
"""
用户交互input。
    类似于qq等app 输入用户名,密码等功能。

    input('提示语') 字符串数据类型

    想要与程序交互一些重要信息时,账号,身份证号,密码等等。
    python2x:
        raw_input() 相当于python3.x input。
        input() 只接受数字类型。
    python3x:input
"""

# 用户交互input
# input出来的数据全部都是str类型。

name = input('请输入姓名:')
age = input('请输入年龄:')
print(name, age)
print(type(name), type(age))
# '我的姓名xx,我的年龄xx,我的性别xx.'

name = input('请输入姓名:')
age = input('请输入年龄:')
sex = input('请输入性别:')
msg = '我的姓名是' + name + ',我的年龄是' + age + ',我的性别是' + sex
print(msg)
print('我的名字', '是', name)
print('我的姓名是' + name + ',我的年龄是' + age + ',我的性别是' + sex)




流程控制语句if

#!/usr/bin/env python3
#author:Alnk(李成果)

"""
流程控制语句if
    根据不同的条件,选择不同的结果。回家,三条路可选择。
    1,基本用法:
        if 条件:
            执行结果

    2,5种结构:
        if 条件:
            执行结果
    大量的出现在你的程序中,让你的程序有不同的执行流程。
"""

# 单独if
'''
age = int(input('请输入年龄'))

if age > 18:
    print('做你想做的事儿')
print(666)	
'''

# if else
'''	
age = int(input('请输入年龄'))

if age > 18:
    print('做你想做的事儿')
else:
    print('安心上学....')
'''

# if elif elif ...
"""
num = input('请输入数字:')

if num == '5':
    print('请你吃饭')
elif num == '1':
    print('带你去香港')
elif num == '3':
    print('请你去大宝剑')
"""

# if elif elif ... else
'''
score = int(input("输入分数:"))

if score > 100:
    print("最高分才100...")
elif score >= 80:
    print("B")
elif score >= 90:
    print("A")
elif score >= 60:
    print("C")
elif score >= 40:
    print("D")
else:
    print("太笨了...E")
print(666)
'''

# if 嵌套
'''
code = 'ABCD'
your_code = input('输入验证码')
username = input('请输入用户名')
password = input('请输入密码')
if your_code == code:
    if username == 'tom' and password == '123':
        print('登录成功')
    else:
        print('用户名或者密码错误')
else:
    print('您输入的验证码错误')
'''




流程控制语句while

#!/usr/bin/env python3
#author:Alnk(李成果)

"""
while:无限循环
    while 条件:
        循环体

    如何结束循环?
        1, 条件不成立。
        2, break
        3, 系统命令:quit() exit() --不建议使用,会导致整个程序退出
"""

# while 循环

# while True:
#     print('光年之外')
#     print('千里之外')
#     print('美人鱼')
#     print('沙漠骆驼')


# flag = True
# while flag:
#     print('光年之外')
#     print('千里之外')
#     print('美人鱼')
#     print('沙漠骆驼')
#     flag = False


# flag = True
# while flag:
#     print('光年之外')
#     print('千里之外')
#     print('美人鱼')
#     flag = False
#     print('沙漠骆驼')

# count = 1
# flag = True
# while flag:
#     print(count)
#     count = count + 1
#     if count == 101:
#         flag = False

# count = 1
# while count < 101:
#     print(count)
#     count = count + 1


# break continue
# break: 遇到break直接结束循环。
# while True:
#     print(111)
#     print(222)
#     break
#     print(333)
# print(555)

# continue: 遇到continue跳过本次循环。
count = 1
while count < 10:
    print(count)
    count += 1
    if count == 5:
        continue




练习题1

#!/usr/bin/env python3
# author:Alnk(李成果)

"""
1. 三次重试机会
2. 每次输错误时显示剩余错误次数
"""

name = "alnk"
password = "123"
code = "abcd"
flag = True
count = 3 # 密码可输错次数

while flag:
    your_name = input("请输入账号:")
    your_password = input("请输入密码:")
    your_code = input("请输入验证码:")

    # 判断验证码
    if your_code.lower() != code:
        print("验证码有误,请重新输入。")
        continue

    # 判断账号密码
    if your_name == name:
        if your_password == password:
            flag = False
            print("恭喜,登录成功!")
        else:
            count = count - 1
            print("密码错误,剩余次数为[%s]" % (count))
    else:
        print("账号有误,请重新输入。")

    if count == 0:
        print("账号冻结,请联系系统管理员")
        flag = False




练习题2

#!/usr/bin/env python3
# author:Alnk(李成果)

# 1、简述变量命名
"""
变量命名规则:
    1,变量名必须由 数字 字母 下划线 任意组合
    2,变量名不能是数字开头
    3,变量名不能是Python中的关键字
        ['and', 'as', 'assert', 'break', 'class', 'continue', 'def','del', 'elif', 'else', 'except', 'exec', 'finally',
        'for', 'from', 'global', 'if', 'import', 'in', 'is','lambda', 'not', 'or', 'pass', 'print', 'raise','return',
        'try', 'while', 'with', 'yield']
    4,变量名不能使用中文
    5,变量名要具有可描述性
    6,变量名不能过长。
    7,变量名的推荐:
        下划线: age_of_tom = 18
"""

# 2、name = input(“>>>”) name变量是什么数据类型?
"""
name变量的数据类型是字符串
"""

# 3、if条件语句的基本结构?
"""
有5种基本结构,如下:

第一种:单独 if
if  条件:
    执行语句

第二种:if ... else
if  条件:
    执行语句
else:
    执行语句
    
第三种:if elif elif ...
if  条件:
    执行语句
elif 条件:
    执行语句
elif 条件:
    执行语句
elif 条件:
    执行语句
...

第四种:if elif elif ... else
if  条件:
    执行语句
elif 条件:
    执行语句
elif 条件:
    执行语句
...
else:
    执行语句
    
第五种:嵌套if
if 条件:
    if 条件:
        执行语句
    ...
...
"""

# 4、用print打印出下面内容:
# 文能提笔安天下,
# 武能上马定乾坤.
# 心存谋略何人胜,
# 古今英雄唯是君.
"""
msg = '''
文能提笔安天下,
武能上马定乾坤.
心存谋略何人胜,
古今英雄唯是君.
'''
print(msg)
"""

# 5、利用if语句写出猜大小的游戏
# 设定一个理想数字
# 比如:66,让用户输入数字,如果比66大,则显示猜测的结果大了;
# 如果比66小,则显示猜测的结果小了;
# 只有等于66,显示猜测结果正
"""
num = 66
flag = True
while flag:
    user_num = input("请输入数字(退出Q):")
    if user_num.lower() == "q":
        break
    if user_num.isdigit():
        user_num = int(user_num)
        if user_num > num:
            print("结果大了")
        elif user_num < num:
            print("结果小了")
        else:
            print("结果正确")
            flag = False
    else:
        print("您输入的不是数字哦")
"""

# 6、提示用户输入他的年龄, 程序进行判断
# 如果小于等于10, 提示小屁孩,
# 如果大于10, 小于等于20, 提示青春期叛逆的小屁孩.
# 如果大于20, 小于等于30. 提示开始定性, 开始混社会的小屁孩儿,
# 如果大于30, 小于等于40. 体制看老大不小了, 赶紧结婚小屁孩儿.
# 如果大于40, 小于等于50. 提示家里有个不听话的小屁孩儿.
# 如果大于50, 小于等于60. 提示自己马上变成不听 话的老屁孩儿.
# 如果大于60, 小于等于70. 提示活着还不错的老屁孩儿.
# 如果大于70, 小于等于90. 提示人生就快结束了的一个老屁孩儿.
# 如果大于90以上. 提示. 再见了这个世界.
"""
age = int(input("请输入你的年龄:"))
if age > 90:
    print("再见了这个世界")
elif age > 70:
    print("人生就快结束了的一个老屁孩儿")
elif age > 60:
    print("活着还不错的老屁孩儿")
elif age > 50:
    print("自己马上变成不听话的老屁孩儿")
elif age > 40:
    print("家里有个不听话的小屁孩儿")
elif age > 30:
    print("看老大不小了, 赶紧结婚小屁孩儿")
elif age > 20:
    print("开始定性, 开始混社会的小屁孩儿")
elif age > 10:
    print("青春期叛逆的小屁孩")
elif 0 < age <= 10:
    print("小屁孩")
"""

# 7、单行注释以及多行注释?
# 单行注释: #
# 多行注释: """被注释内容"""  '''被注释内容'''


# 8、简述你所知道的Python3x和Python2x的区别?
"""
第一:源码
    python2x:源码冗余,源码重复,源码不规范。
    python3x:源码清晰优美简单。
第二:编码
    python2x:编码默认是ascii
    python3x: 编码是utf-8
第三:input函数
    python2x:raw_input() 相当于python3.x input input() 只接受数字类型。
    python3x:input
"""

# 9、提示用户输入麻花藤. 判断用户输入的对不对. 如果对, 提示真聪明, 如果不对, 提示你 是傻逼么
"""
user_str = input("请输入麻花藤:")

if user_str.strip() == '麻花藤':
    print("真聪明")
else:
    print("你是傻逼么")
"""

# 10、使用while循环输入 1 2 3 4 5 6 8 9 10
"""
count = 0
while count < 10:
    count += 1
    if count == 7:
        continue
    print(count)
"""

# 11、求1-100的所有数的和
"""
sum = 0
count = 0
while count < 101:
    sum = sum + count
    count = count + 1
print(sum)
"""

# 12、输出 1-100 内的所有奇数
"""
count = 1
while count < 100:
    if count % 2 == 1:
        print(count)
    count = count + 1
"""

# 13、输出 1-100 内的所有偶数
"""
count = 1
flag = True
while flag:
    if count == 100:
        flag = False

    if count % 2 != 1:
        print(count)
    
    count = count + 1
"""

# 14、求1-2+3-4+5 ... 99的所有数的和
"""
odd_sum = 0     #奇数总和
even_sum = 0    #偶数总和
count = 1
flag = True

while flag:
    if count == 99:
        flag = False

    if count % 2 == 1:
        odd_sum = odd_sum + count
    else:
        even_sum = even_sum + count

    count = count + 1

sum = odd_sum - even_sum
print("和为:",sum)
"""

# 另外一种解法
sum = 0
count = 1
while count < 100:
    if count % 2 == 0:
        sum = sum - count
    else:
        sum = sum + count
    count += 1
print(sum)

posted @ 2021-04-08 15:00  李成果  阅读(153)  评论(0编辑  收藏  举报