Python3的语法学习

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/yangliu19920502/article/details/53023854

做程序越久越发现语言只是一门工具而已,想要学习一门语言也很简单从语法开始半天到一天就差不多了(非系统级的语言)然后写下一些基本用法,这里贴出来:

main.py

"""一下是Python的常用模块"""
import sys
import os
import glob
import re
import mymodule
import math
import random
from urllib.request import urlopen
import smtplib
from datetime import datetime
import zlib  # 还有gzip,bz2,zipfile,以及 tarfile

print("Hello Python")
print(True and True)
# 命令行参数
print(sys.argv)
# 错误输出重定向和程序终止
sys.stderr.write('Warning, log file not found starting a new one\n')
# 获得当前工作的目录
print(os.getcwd())
# 文件通配符
print(glob.glob('*.py'))
# 字符串正则匹配
print(re.findall(r'\bf[a-z]*', 'which foot or hand fell fastest'))
print(re.sub(r'(\b[a-z]+) \1', r'\1', 'cat in the the hat'))
# 数学
print(math.cos(math.pi / 4))
print(math.log(1024, 10))
# 随机数
print(random.random())
print(random.sample(range(100), 10))
print(random.choice(['apple', 'pear', 'banana']))
# 网络
for k in urlopen("http://www.baidu.com"):
    print(k.decode("UTF-8"))
# 日期处理
print(datetime.today())
print(datetime.today().strftime("%m-%d-%y. %d %b %Y is a %A on the %d day of %B."))
# 数据压缩,b为了能够使用Python2的库
sss = b"witch which has which witches wrist watch"
t = zlib.compress(sss)
print(len(t))
print(zlib.decompress(t))

arrs = [1, 2, 3]
del arrs[0]
print(arrs)

print(len(arrs))

attr_1 = ['h', 'e', 'l', 'l', 'o']
attr_2 = ['w', 'o', 'r', 'l', 'd']
print(attr_1 + attr_2)

for i in attr_1:
    print(i)

j = 0
while j < len(attr_1):
    print(j, attr_1[j])
    j += 1

iterator = iter(attr_2)
while True:
    try:
        print(next(iterator))
    except StopIteration:
        break


def hello_function():
    print("Hello Python!")


hello_function()


def print_a_string(string):
    print(string)
    string = "i edit it"
    return string


print(print_a_string("call a function"))

print("Python path:", sys.path, '\n')

print(mymodule.getNumber(20, 78))

moduleClass = mymodule.MyClassImpl("哈哈哈")
print(moduleClass.i, moduleClass.getSomeNumber(), moduleClass.getSomeString(),
      moduleClass.getYourInput("input1", "input2"), moduleClass.getPrivateNumber())

sys.exit(0)

str1 = input("请输入一个数字1:")
str2 = input("请输入一个数字2:")

try:
    print(int(str1) + int(str2, 0))
except (ValueError, RuntimeError):
    print("输入的不是数字:", ValueError)

try:
    print(int(str1))
except ValueError:
    """这个什么都不做"""
    pass

"""-----------------------"""
"""自定义一个Exception"""


class MyException(Exception):
    def __init__(self):
        pass


try:
    raise MyException()
except MyException:
    print(MyException)

try:
    print(int(str1))
except ValueError:
    """这个就是把错误又抛出去了"""
    raise
else:
    print("如果你没有把握抛出的是ValueError那么这儿会给你一次拦截的机会")
finally:
    print("一样的支持finally")

mymodule.py

# Filename:mymodule.py

def getNumber(n1, n2):
    return n1 * n2


class MyClass:
    """这个是私有变量"""

    i = 0
    j = 2

    """这个是私有的变量外部无法访问"""
    __privateValue = 1234

    def __init__(self):
        print("这个是无参构造函数")

    def __init__(self, str):
        print("这个是有参构造函数:", str)

    def getSomeString(self):
        return "Hello Python Class!!!"

    def getSomeNumber(self):
        return self.i + self.j

    def getYourInput(self, str1, str2):
        return str1 + str2

    def getPrivateNumber(self):
        return self.__privateValue


class OtherClass:
    def __init__(self):
        print("多继承的类")


class MyClassImpl(MyClass, OtherClass):
    i = 10

    def __init__(self, s):
        print("这个是继承类")
        MyClass.__init__(self, s)
        OtherClass.__init__(self)

    def getSomeString(self):
        return "覆盖了父类"

猜你喜欢

转载自blog.csdn.net/yangliu19920502/article/details/53023854
今日推荐