我如何将此字符串转换为 Python 中的整数和其他字符串
How can i convert this string to integers & other strings in Python
我得到了这个字符串...
String = '-268 14 7 19 - Fri Aug 3 12:32:08 2018\n'
我想在整数变量中获取前 4 个数字(-268、14、7、19),在另一个字符串变量中获取 Fri Aug 3 12:32:08。
这可能吗?
使用str.split
例如:
String = '-268 14 7 19 - Fri Aug 3 12:32:08 2018\n'
first, second = String.split(" - ")
first = tuple(int(i) for i in first.split())
print(first)
print(second)
输出:
(-268, 14, 7, 19)
Fri Aug 3 12:32:08 2018
使用基本 python
string = '-268 14 7 19 - Fri Aug 3 12:32:08 2018\n'
vals, date = string.strip().split(' - ')
int_vals = [int(v) for v in vals.split()]
print(int_vals) # [-268, 14, 7, 19]
print(date) # Fri Aug 3 12:32:08 2018
使用正则表达式
import re
match = re.search(r'([-\d]+) ([-\d]+) ([-\d]+) ([-\d]+)[ -]*(.*)', string)
date = match.group(5)
int_vals = [int(v) for v in match.groups()[:4]] # same results
为此使用 split
和 map
:
left, date = String.split(' - ')
numbers = list(map(int, left.split()))
print(numbers, date)
我得到了这个字符串...
String = '-268 14 7 19 - Fri Aug 3 12:32:08 2018\n'
我想在整数变量中获取前 4 个数字(-268、14、7、19),在另一个字符串变量中获取 Fri Aug 3 12:32:08。
这可能吗?
使用str.split
例如:
String = '-268 14 7 19 - Fri Aug 3 12:32:08 2018\n'
first, second = String.split(" - ")
first = tuple(int(i) for i in first.split())
print(first)
print(second)
输出:
(-268, 14, 7, 19)
Fri Aug 3 12:32:08 2018
使用基本 python
string = '-268 14 7 19 - Fri Aug 3 12:32:08 2018\n'
vals, date = string.strip().split(' - ')
int_vals = [int(v) for v in vals.split()]
print(int_vals) # [-268, 14, 7, 19]
print(date) # Fri Aug 3 12:32:08 2018
使用正则表达式
import re
match = re.search(r'([-\d]+) ([-\d]+) ([-\d]+) ([-\d]+)[ -]*(.*)', string)
date = match.group(5)
int_vals = [int(v) for v in match.groups()[:4]] # same results
为此使用 split
和 map
:
left, date = String.split(' - ')
numbers = list(map(int, left.split()))
print(numbers, date)